作者:冰雪聪明 | 来源:互联网 | 2023-02-09 10:39
1> Zumo de Vidr..:
试试:
echo some text
printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' -
echo some text
没有[归因](http://wiki.bash-hackers.org/snipplets/print_horizontal_line#a_line_across_the_entire_width_of_the_terminal)?
2> cb0..:
在bash和zsh中$COLUMNS
,可以使用该变量。
我将这一行用于此目的:
printf %"$COLUMNS"s |tr " " "-"
您也可以使用seq
,但这并不像其他解决方案那样直观:
seq -s- $COLUMNS|tr -d '[:digit:]'
编辑:
看来这$COLUMNS
是一个本地bash变量,您需要将其导出。因此,现在有(至少)2个选项。
在调用脚本之前导出变量:
export COLUMNS; ./your_script.sh
使用tput
如谟德Vidrio建议。
printf %"$(tput cols)"s |tr " " "-"