我在脚本中使用“tput cols”,一切正常,除非窗口最大化。我的脚本能够正确获取任何窗口大小,但是当窗口最大化时,它会得到错误的值(80)。然后我直接在终端中输入“tput cols”,然后得到正确的大小(158)。所以我的问题是,即使窗口最大化,我怎样才能获得正确的值???
提前致谢
tput cols
可能是从 shell 环境变量$COLUMNS
而不是TIOCGWINSZ
ioctl 读取。shell 可能会更新此变量以响应SIGWINCH
,但这当然不会影响$COLUMNS
脚本中的变量。
尝试unset COLUMNS
查看是否tput cols
从终端 ioctl 获取值。
归档时间: |
|
查看次数: |
4493 次 |
最近记录: |