Файл.desktop с Exec и Terminal=True :временно предотвращает отключение терминала при выходе из приложения?

Вы можете использовать evalдля запуска команды, сохраненной в строке (или на основе вывода другой программы):

eval 'echo Hello World'
eval $(magic-ssh-commmand-generator)

Изman bash:

eval [arg...]
    The  args  are  read  and concatenated together into a single command. 
    This command is then read and executed by the shell, and its exit status
    is returned as the value of eval.  If there are no args, or only null 
    arguments, eval returns 0.
0
08.03.2021, 17:57
1 ответ

Терминал Gnome имеет возможность удерживать терминал открытым при выходе из команды, как показано ниже. Настройка, которая должна держать его открытым после сбоя, чтобы вы могли видеть любые ошибки (s ). Другие терминалы могут иметь аналогичную опцию.

Screenshot showing option to hold the terminal open

Если Gnome Terminal не используется по умолчанию (и если вы установили его, при необходимости )вы можете явно вызвать его из файла .desktopдля запуска приложения Python:

[Desktop Entry]
Version=1.0
Name=My App
Exec=gnome-terminal --command 'python3 /home/pi/my_app.py'
Terminal=false
Type=Application
Categories=Application;

Обратите внимание, что для параметра Terminalустановлено значение false, потому что вы не хотите запускатьgnome-terminalв терминале.

Параметр поведения при выходе задается для каждого профиля, поэтому вы можете создать профиль (, например. «Hold Open» ), только для ситуаций, когда вы хотите, чтобы терминал оставался открытым при выходе, и измените параметр Execна что-то вроде следующего, чтобы указать использование этого профиля:

Exec=gnome-terminal --profile='Hold Open' --command 'python3 /home/pi/my_app.py'

По какой-то причине аргументы командной строки Gnome Terminal не задокументированы в доступной -справочной документации с графическим интерфейсом пользователя. Чтобы просмотреть их полный список, запустите gnome-terminal --help-all.

0
18.03.2021, 22:26

Теги

Похожие вопросы