Скрипт оболочки работает по-разному в KDE и в терминале

Скрипт оболочки работает по-разному в KDE и в терминале

У меня есть скрипт оболочки, который я создал для изменения следующей загрузки EFI, а затем выполняет перезагрузку. Если я запускаю его в окне терминала, он работает нормально, но если я запускаю его с помощью иконки в KDE, он перезагружается, но не изменяет следующую efiboot. Я пробовал настроить иконку на запуск от имени root, но это не помогло.

Вот сценарий

#!/bin/баш
kdialog --title "Перезагрузка в Windows Prompt" --yesno "Вы уверены, что хотите перезагрузить Windows?";
если [ $? = 0 ]; тогда
    судо efibootmgr -n 0
    перезагрузить
еще
    kdialog --msgbox "Перезагрузка прервана пользователем"
фи

Кто-то даже предлагал сделать паузу между efibootmgr и перезагрузкой, но это тоже не сработало.

решение1

Не уверен, что это то, что вы ищете, но вы не рассматривали возможность запуска терминала и выполнения скрипта с помощью значка?

Щелкните правой кнопкой мыши по значку > Параметры значка > Приложение > Команда:

konsole -e /path/to/your/script.sh

Или если вам по какой-то причине нужно, чтобы окно оставалось открытым, используйте-noclose

Связанный контент