Я использовал консоль Linux, и внезапно формат букв изменился:

консольный linux с неверным форматом

Я наверное нажал не на те клавиши. Есть идеи, как это исправить?

1 ответ1

1

Такой мусор может быть следствием команды, которая выводит двоичные данные на вашу консоль. Обычно вы не хотите, чтобы команды делали это. Тем не менее, это возможно из-за ошибки или какой-то ошибки. Пример:

Вы хотели cat file где file - текстовый файл, вы сделали опечатку и запустили cat fild где fild оказался двоичным файлом.

В таком сценарии некоторые конкретные последовательности байтов могут интерпретироваться вашим эмулятором терминала как управляющие последовательности или около того, они будут влиять на его последующее поведение.

Чтобы исправить это:

  1. Нажмите Ctrl+C несколько раз, если какой-то процесс все еще выполняется или в командной строке вы что-то набрали вслепую.
  2. Тип reset .
  3. Нажмите Enter .

От man 1 reset:

При вызове в качестве reset tset устанавливает режимы cooked и echo, отключает режимы cbreak и raw, включает перевод новой строки и сбрасывает любые неустановленные специальные символы в их значения по умолчанию перед выполнением инициализации терминала, описанной выше. Это полезно после того, как программа умирает, оставляя терминал в ненормальном состоянии. Обратите внимание, вам, возможно, придется набрать

<LF>reset<LF>

(символ перевода строки - обычно control-J), чтобы заставить терминал работать, поскольку возврат каретки больше не может работать в ненормальном состоянии. Кроме того, терминал часто не повторяет команду.

Таким образом, более надежная версия команды выглядит так:

  1. Введите Ctrl+J, reset Ctrl+J.

Мой опыт (особенно в tmux) показывает, что в некоторых случаях reset может не помочь; все же это обычно делает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .