Я хотел бы знать размеры моего текущего окна xterms. Я использую Cygwin. Есть ли команда просто напечатать это в подсказку?
4 ответа
Если это фактический xterm, должно работать следующее (протестировано на сеансе PuTTY, поскольку на данный момент Cygwin не установлен):
stty -a | sed 's/;/\n/g' | grep rows | awk '{print $2}'
В моем случае это вернулось 24
. Так же,
stty -a | sed 's/;/\n/g' | grep columns | awk '{print $2}'
вернулся 80
.
Все задействованные команды должны быть стандартными в Cygwin или любой UNIX-подобной системе. Я был бы очень удивлен, если бы они не работали одинаково хорошо в командной строке Cygwin.
Если вы хотите избежать использования поиска и заменить регулярное выражение и команду sed ...
Примечание: Запустите stty -a самостоятельно, чтобы определить положение значения строк .
stty -a | grep rows | tr -d ';' | awk {'print $5'}
В моем случае (xterm в Open Solaris под управлением Gnome) это вернулось 24.
Если вы хотите избежать использования поиска и заменить регулярное выражение, sed и awk ...
stty -a | grep rows | tr -d ';' | cut -d ' ' -f 5
Опять 24.
Если вы хотите избежать использования поиска и заменить регулярное выражение, sed, grep и awk ...
stty -a | head -n 1 | tr -d ';' | cut -d ' ' -f 5
Опять 24.
Вы можете найти ширину вашего терминала, просто изменив одну из этих команд так, чтобы она указывала на значение столбцов stty -a.
Если вам не нравится использование stty -a ...
resize | grep LINES | tr -d ';' | cut -d = -f 2
а также
resize | grep COLUMNS | tr -d ';' | cut -d = -f 2
Дает вам размер в символах:
echo $COLUMNS " " $LINES
Работает ли это в cygwin? Вы говорите нам!
Установите пакет ncurses
, затем выполните
tput cols; tput lines