Вставка нескольких строк в терминальные аварийные прекращения работы после определенных команд

Как пример, я вставляю следующее в свой терминал (с новой строкой в конце):

pwd
adb doesnotexist
ls
​

Все три выполняются. Вторые выходы с отказом. С другой стороны, вставка этого:

pwd
adb shell pwd
ls
​

остановки в adb и не продолжает вставлять или выполняться ls.

  1. Какой механизм работает здесь для прерывания вставки?
  2. Как я могу переопределить его?
0
задан 4 October 2016 в 23:19

1 ответ

Я думаю, что это происходит, потому что Вы выполняете эти команды в терминал, и некоторые команды вмешиваются в терминальную конфигурацию. Например, когда sudo просит пароль, он очистит терминальный буфер, таким образом, Вы не сможете предварительно ввести свой пароль: Вы не можете сделать sleep 5; sudo ls, затем ввести Ваш пароль во время sleep. То же с rm просьба о подтверждениях.

я могу получить тот же эффект с:

ls
script -c ls -f /dev/null
pwd

Значение, если я вставка мыши они в Konsole, pwd не становятся выполняемыми. Здесь, вторая команда, конечно, смешивает с терминальной конфигурацией, которая приводит меня полагать что также - adb shell (но вероятно не abd doesnotexist).

1
ответ дан 28 September 2019 в 11:30

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

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