Perl é bom nisso:
separator=$( perl -e 'print "-" x (qx(tput cols) / 2)' )
Com o shell:
separator=$( printf "%*s" $(( $(tput cols) / 2 )) " " | sed 's/ /-/g' )
onde tput cols
é usado para capturar a largura atual do terminal.
Eu quero escrever uma série do caractere -
, o valor igual a 50% do tamanho da coluna da janela do terminal.
Eu já tenho o tamanho da coluna. Digamos que o tamanho da coluna do terminal seja 30. Meu resultado final desejado seria uma variável String contendo isso:
echo $column_width
---------------
# That is 15 x "-"
Como devo proceder para construir esta variável? Devo percorrer 0 < $ column_width e concatenar um "-" para cada iteração ou existe uma maneira mais inteligente? Caso você esteja se perguntando, isso é apenas algo para um aviso bash.
Perl é bom nisso:
separator=$( perl -e 'print "-" x (qx(tput cols) / 2)' )
Com o shell:
separator=$( printf "%*s" $(( $(tput cols) / 2 )) " " | sed 's/ /-/g' )
onde tput cols
é usado para capturar a largura atual do terminal.