我想知道我当前的 xterms 窗口大小。我正在使用 Cygwin。有没有命令可以将其打印到提示符中?
答案1
如果它是一个真正的 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 控制台提示符下不能同样好用,我会感到非常惊讶。
答案2
给出字符大小:
echo $COLUMNS " " $LINES
它是否在 cygwin 中工作?您告诉我们!
答案3
安装ncurses
包,然后执行
tput cols; tput lines
答案4
如果你想避免使用搜索和替换正则表达式和sed命令...
笔记:单独运行 stty -a 来确定行价值。
stty -a | grep rows | tr -d ';' | awk {'print $5'}
就我的情况而言(在 Open Solaris 中运行 Gnome 的 xterm),返回的是 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