bash, récupérer le nombre de colonnes du terminal

2012-10-10

Pour centrer :

$ COLUMNS=$(tput cols)
$ title="Hello mister"
$ printf "%*s\n" $(((${#title}+$COLUMNS)/2)) "$title"
                                       Hello mister

Ou afficher un séparateur :

printf -v separator "%*s " $(( $(tput cols) - ${#file} - 5 ))
echo "-- $file ${separator// /-}"