Linuxパソコン・サーバーのBashプログラミング言語(スクリプティング言語)のコマンドライン上において、水平線のライン、文字列をきれいに出力するコマンドの実装方法についてです。
printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' -
# or
stty size | perl -ale 'print "-"x$F[1]'
僕は以下のように関数定義してデリミタ指定できるようにしてます。
horizonal_line(){
: horizonal_line [delimiter]
: e.g. horizonal_line "="
# stty size | perl -ale 'print "-"x$F[1]'
stty size | perl -ale "print \"${1:-"-"}\"x\$F[1]"
}
$ horizonal_line "*"
***********************************************************************************************
$ horizonal_line "="
===============================================================================================
$ horizonal_line "+"
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
$ horizonal_line "#"
###############################################################################################
$ horizonal_line
-----------------------------------------------------------------------------------------------