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

Я пытаюсь сделать пользовательское средство запуска для Каирского Прикрепления, которые при нажатии открывают окно терминала, и выполняется sudo apt-get update && sudo apt-get upgrade && sudo apt autoremove по очереди.

До сих пор это - то, что я имею:

xterm -e sudo apt-get update && xterm -e sudo apt-get upgrade && xterm -e sudo apt autoremove

С этим, однако, я должен ввести свой длинный пароль три раза, потому что он открывает три отдельных окна терминала с каждой командой. Выполнение xterm -e sudo apt-get update && sudo apt-get upgrade && sudo apt autoremove не работает, потому что это - три отдельных команды, и xterm не знает, что я хочу все после -e выполняться в том же окне терминала.

Есть ли что-то другое, чем && это определило бы все это как одну команду, а не три? Я должен буду записать сценарий или что-то (у меня еще нет опыта вообще со сценариями)?

Я использую Terminix для выполнения исходной команды.

2
задан 4 September 2017 в 21:38

2 ответа

Просто необходимо добавить некоторые кавычки:

xterm -e "sudo apt-get update && sudo apt-get upgrade && sudo apt autoremove"

мне также нравится добавлять sudo apt clean к моей остроте обновления, и я установил alias в моем ~/.bash_aliases файл для выполнения строки только с командой update:

alias update='sudo apt update && sudo apt upgrade && sudo apt autoremove && sudo apt clean'

Или если Вы хотите отдельное xterm:

alias update='xterm -e "sudo apt update && sudo apt upgrade && sudo apt autoremove && sudo apt clean"'

, Если Вы хотите, чтобы Ваш xterm остался открытым после выполнения команд, добавьте ;bash к концу цепочки команды или добавьте опцию -hold прежде -e.

1
ответ дан 2 December 2019 в 04:47

Используйте команду этот путь:

xterm -e sudo bash -c "apt update && apt upgrade && apt autoremove"

с этим Вы только введете свой пароль однажды.

0
ответ дан 2 December 2019 в 04:47

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

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