Сделать запрос пользователя терминалом gnome перед закрытием

Когда вы открываете gnome-terminal без каких-либо параметров и выполняете команду блокировки (например, python3 , vim или cat ), а затем попробуйте закрыть окно, нажав кнопку закрытия (например, x кнопку в строке заголовка) или какое-либо сочетание клавиш, отобразится окно подтверждения:

enter image description here

Однако, когда вы открываете gnome-terminal с указанной выполненной командой, то есть в форме gnome-terminal - python3 , окно подтверждения больше не отображается и окно закрывается сразу после того, как вы (случайно) нажимаете кнопку закрытия.

Возможно ли отображение окна подтверждения даже при использовании формы gnome-terminal - ? Если это невозможно, есть ли обходные пути?


Среды:

$ gnome-terminal --version
# GNOME Terminal 3.36.2 using VTE 0.60.3 +BIDI +GNUTLS +ICU +SYSTEMD

Что я пробовал:

  • Оснащение исполняемой команды обработчиками сигналов для всех поддерживаемых сигналов не сработало; окно все еще было закрыто без подтверждения, хотя процесс пережил закрытие, перехватив SIGHUP (три раза), SIGCONT (один раз) и SIGWINCH (один раз). Мне пришлось дополнительно выполнить kill -SIGKILL <идентификатор процесса> , чтобы убить процесс.

  • Я нашел одно исключение.Когда вы выполняете gnome-terminal - bash , подтверждение отображается (хотя по умолчанию это то же самое, что и gnome-terminal ).

4
задан 15 July 2020 в 14:02

1 ответ

Решение было предоставлено Полом Бенсоном в комментариях. Большое спасибо, Пол! (И спасибо sudodus за указание на полезную ветку для решения проблемы с загрузочной флешкой). Я пишу решение здесь, чтобы прояснить, что проблема решена, насколько я обеспокоен.

Процедура описана по следующей ссылке: https: // medium. ком / @ aterro51 / Linux-как-к-затруднительного-Linux-мята-initramfs-стремительные-на-загрузки a6bced4fe49f . Полученные сообщения об ошибках указывают на наличие проблемы с корневой файловой системой, которая препятствовала загрузке компьютера.

В командной строке initramfs мне сначала нужно было ввести следующее:

(initramfs) exit

Эта команда была полезна для получения пути к корневой файловой системе, которая отображалась в одной из строк вывода:

Корневая файловая система на пути [ ] требует ручного fsck

. Следующая команда исправила проблему с корневой файловой системой:

(initramfs) fsck [ path ] -y

После этого мне нужно было только перезагрузиться. Тот же эффект может быть достигнут с помощью bash с использованием пользовательского скрипта:

gnome-terminal -- bash -i my_script.sh

и содержимое my_script.sh просто

python3
2
ответ дан 30 July 2020 в 22:07

Другие вопросы по тегам:

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