Попытка «sudo teamviewer -daemon start» на самом деле ничего не делает для меня (Linux Mint) - поэтому решение будет:
sudo teamviewer --daemon enable
Если служба демона, безусловно, перестает работать, то это разрешение снова запустите демон, телевизор готов к использованию.
найдено решение на этой странице
Альтернативы: 1. Вы можете использовать случай, а не так:
case $ret in
1) /path/to/script1 ;;
2) /path/to/script2 ;;
3) /path/to/script3 ;;
esac
Вы могли бы поочередно вызывать скрипты непосредственно с каждой кнопки, без необходимости манипулировать $? return code using this synthax: --button = "ShellScript1: bash /path/to/script1.sh" В моем подобном скрипте с yad-списком это отлично работает:
yad --list --width=800 --height=600 --center \
--button="Display":"/home/gg/Tests/yadabout.sh" --button="Cancel":0 \
--column "ID" --column "File" \
--column "Exec" "${list[@]}")
[d6 ] Разница: когда вы назначаете код выхода / идентификатор каждой кнопке, после нажатия кнопки yad возвращает значение переменной (файлы в вашем коде), а диалог yad завершается. Если вместо этого идентификатор кнопки вы назначаете команду для запуска (пример 2 выше), тогда диалог yad остается на экране и не выходит. Но в этом режиме нет возвращаемого значения yad, и поэтому вы не можете разобрать выбор из диалога yad в эту внешнюю команду / скрипт (не на 100% уверен, но я еще не нашел способа сделать это). [ ! d7]
Чтобы уточнить предыдущий ответ:
processes=$(yad --width 100 --height 100 --title "Chose Process" --text="Select" --button="Run Cmd":1 --on-top --center)
ret=$?
if [[ $ret -eq 1 ]]; then
/path/process.sh
fi