Вставка нескольких строк для последовательного выполнения

tr подходит для этой работы:

tr -d 0 

{ {1}}

[: 0:] недействителен, поскольку вам необходимо использовать класс символов между [: и :] .

2
26.03.2019, 17:59
2 ответа

Предполагая, что вы все еще находитесь в пределах времени ожидания кэша учетных данных sudo (, если вы не уверены, просто обновите его с помощью sudo -vперед запуском фрагмента ). Эта проблема возникает из-за того, что apt (-get )очень богатое консольное приложение и, таким образом, использует стандартный ввод, даже если он ничего не запрашивает у вас из-за -y.

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

В приглашении начните с ввода (, затем вставьте фрагмент, затем введите закрывающий )и нажмите клавишу возврата

Это должно уйти.

Обратите внимание, что фрагмент кода не выполняется сразу после его вставки. Он скорее «ставится в очередь» в командной строке, ожидая закрытия скобок.

(PS :В зависимости от вашей системы вам может понадобиться использовать apt-get autoremoveвместо apt autoremove, а также вам может понадобиться использовать -y на updateи upgradeтакже)

5
27.01.2020, 21:58

Если между командой sudo apt upgradeи командой sudo apt install -y build-essentialsпрошло достаточно времени, SUDO снова запросит ваш пароль.

Поскольку вы вставляете текст в консоль, следующая строка (с )будет принята как STDIN для запроса пароля SUDO. Если строка не соответствует вашему паролю, аутентификация завершится ошибкой и строка build-essentialsне будет выполнена.

1
27.01.2020, 21:58

Теги

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