Например, когда я набираю следующую команду,
echo line | (cat >/dev/null; vi)
даже завернутый в другую оболочку,
sh -c 'echo line | (cat >/dev/null; vi)'
и вернулся из Vim, теперь больше не будет отображаться возврат каретки.
Как я могу сделать так, чтобы он снова отображал новые строки? (Без выхода.)
command-line
tty
Xiè Jìléi
источник
источник
Ответы:
попробуйте один или оба из них:
ctrl+c
, затем введитеreset
, затем нажмитеenter
.ctrl+c
, затем введитеstty sane
, затем нажмитеenter
.ctrl+c
чтобы очистить любые другие символы , которые Вы могли бы типизированных в командной строке.reset
илиstty sane
обычно исправляет испорченный терминал. Прочитайте справочную страницуreset
иstty
для получения дополнительной информации.Обратите внимание, что, если терминал испорчен достаточно, то это может быть даже не так
ctrl+c
илиenter
будет работать, как ожидалось. Есть и другие способы ввода символов, но они включают древнюю темную магию. В этом случае обычно проще просто закрыть терминал и запустить другой.Мое понимание внутренней работы терминала недостаточно глубоко, чтобы объяснить, почему или как он это делает.
источник
Он не предназначен для
vi
получения ввода от стандартного ввода.Во всяком случае, вы можете получить переводы строки снова с
без сброса терминала.
источник