В командной строке Windows, почему под приглашением находится большое количество пустого пространства?

14

Я уже давно пользуюсь командной строкой в ​​Windows и только что понял, что под приглашением есть несколько страниц пустых строк. Почему?

сойка
источник

Ответы:

26

«Большой объем пустого пространства» - это строки экранного буфера, которые еще не были заполнены выводом.

Чтобы изменить экранный буфер по умолчанию на 300 строк, выполните следующие действия:

  1. Откройте командную строку.
  2. Щелкните правой кнопкой мыши значок приложения (в левом верхнем углу)
  3. Нажмите на свойства
  4. Выберите вкладку Layout
  5. Установите размер экрана буфера, высота до 20.
  6. Нажмите ОК

Примечание: я рекомендую изменить размер буфера, так как 20 строк - это не много строк отображаемого вывода.

Стивен
источник
5
Экранный буфер - это количество строк и столбцов вывода командной строки, сохраненных в памяти. Размер окна показывает, сколько буфера отображается в окне.
Стивен
1
@Jay Область за пределами текущего отображаемого cmdокна, которую можно просматривать с помощью вертикальной полосы прокрутки. Обычно используется для просмотра предыдущих команд и вывода, которые больше не видны.
DavidPostill
21
Вместо того, чтобы вернуть его к значению по умолчанию, я рекомендую изменить его на максимальное поддерживаемое значение в 9999 строк. На самом деле это не проблема распределения памяти на компьютерах, которые были изготовлены в этом веке, и это может быть весьма полезно при запуске сценариев, которые производят много выходных данных.
Кайзерлуди
1
@zpr, мы все еще можем столкнуться с проблемами памяти, но они, вероятно, не будут вызваны экранным буфером cmd.
Джейкоб Райле
2
Это не объясняет, почему, хотя. Почему командное окно Windows позволяет пользователю прокручивать пространство, которое еще не было записано? Сравните с терминалом Mac OS X и большинством терминалов Linux, которые допускают максимальный размер буфера, но не позволяют пользователю прокручивать области, которые еще не использовались.
Эндрю Медико
11

Я знаю, что это не то, что было рассмотрено @steven. Если вы хотите изменить экранный буфер из командной строки или командного файла, вы можете использовать modeкоманду (столбцы режима, строки). Я регулярно использую это из командной строки:

mode 200, 300
miltonb
источник
3
Это классная функция! Я никогда не видел этого раньше!
Канадский Люк
4
MODE столько лет, сколько они получают. В DOS команда MODE позволяла переключаться между различными символьными режимами, поддерживаемыми оборудованием графического адаптера. Выборы были очень ограничены. На IBM PC у MDA не было опций (всегда 80x25), а у CGA было только два (MODE 80 и MODE 40). Более продвинутые адаптеры позже представили больше опций, включая более 25 линий. VGA, например, имел РЕЖИМ 80,43, в котором использовалась более короткая символьная матрица CGA при более узком разрешении VGA (350 строк развертки вместо 200), чтобы обеспечить дополнительные 18 строк текста. Я думаю, что параметр "высота" был добавлен, возможно, на DOS 3.3?
Евро Мицелли