Я хотел бы знать размеры моего текущего окна xterms. Я использую Cygwin. Есть ли команда просто напечатать это в подсказку?

4 ответа4

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.

0

Если вы хотите избежать использования поиска и заменить регулярное выражение и команду 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
0

Дает вам размер в символах:

 echo $COLUMNS " " $LINES

Работает ли это в cygwin? Вы говорите нам!

0

Установите пакет ncurses , затем выполните

tput cols; tput lines

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