我正在编写一个脚本,当我进入某个目录时,该脚本会显示该git log
目录的。cd
这样的日志可能会很庞大,包含数百行。到目前为止,我一直将其限制为带有 ( ... | head -n 30
) 的硬编码 30 行,在工作中的大屏幕上很酷,但在家里太大了。我希望日志占据任何终端上大约一半(垂直)屏幕,例如工作时的 Gnome、家里的 iTerm2。我不使用 screen 或 tmux。但很想学习他们。
如何从命令行查找终端中可用的垂直线数?
答案1
终端参数存储为$LINES
和$COLUMNS
变量。
此外,您还可以使用特殊的术语操作程序,例如tput
:
tput lines # outputs the number of lines of the present terminal window.
tput cols # outputs the number of columns of the present terminal window.
答案2
此命令应为您提供终端上的行数:
stty size | cut '-d ' -f1
有些系统可能无法实现stty size
,因此您可能需要这样的东西:
stty -a | tr \; \\012 | grep rows | tr -d ' rows'