Я работаю над встроенной системой Busybox, работающей под управлением Python 2.7.Не удается увидеть ввод с клавиатуры после «killall python»
Всякий раз, когда я убиваю Python с использованием
killall python
, пока я сбегаю интерактивную оболочку Python будущих экземпляры интерактивного разрыва оболочки Python для этой сессии.
Так, например, У меня есть ssh-соединение с устройством, которое в настоящее время запускает оболочку python. Теперь я использую «killall python» из другой оболочки. Оболочка на первом ssh-соединении закрывается (как и ожидалось) с сообщением «Terminated». До сих пор все это ожидалось.
Теперь я снова использую команду «python» в той же оболочке, где у меня была последняя оболочка python. Теперь я получаю ненормальное поведение в том смысле, что ни один мой ввод не отображается.
Так, например, если я обычно введите «печать („тест“)» Я вижу это:
>>> print('test')
test
>>>
Если я сделать то же самое после убийства питона я вижу это:
>>> test
>>>
Итак, как вы видите, мой вход («print ('test') \ n") не отображается, как ожидалось. Все выходы программы видны.
Чтобы исправить это, я должен закрыть соединение (например, соединение ssh) и запустить его снова. Это влияет только на соединения, в которых была запущена оболочка python, когда я использовал команду killall. Поэтому, если есть несколько соединений ssh, на них влияют только те, у которых был python, запущенный во время команды killall.
Не имеет значения, использую ли я «killall» или просто «kill [PID]», результат тот же.
Кто-нибудь знает, что вызывает это и как это исправить?
Не 'killall python', а' kill PID'. –
Такая же история здесь. Пробовал это прямо сейчас, нет никакой разницы, могу ли я использовать killall или kill – Dakkaron
Для чего был downvote? – Dakkaron