
如何找出開啟的 bash 終端機視窗中的最大行數和字元列數?
我知道我可以像這樣使用curses C 庫找到答案:
getmaxyx(stdscr, mrow, mcol);
我想以相同的方式將 mrow 和 mrol bash 變數關聯到我的 bash 會話。
答案1
Bash 已經內建了您要尋找的變數:$LINES 和 $COLUMNS。
不幸的是,這些僅適用於互動式 shell,通常不適用於腳本,但可以透過向腳本的 shebang 行添加開關來將腳本設定為互動式:
#!/bin/bash -i
答案2
Xterm 附帶了一個名為 的工具resize
,可以在腳本內使用它來設定相同的變數:
eval $(resize)
echo "The screen is $COLUMNS columns wide."