ruler() { for s in '....^....|' '1234567890'; do w=${#s}; str=''; for (( i=1; i<=(COLUMNS + w) / $w; i=i+1 )); do str+=$s; done; str=${str:0:COLUMNS} ; echo $str; done; }
Эта функция ruler()
создает линейку шириной, соответствующей окну терминала. Она выводит строку символов, состоящую из точек, каретки, вертикальной черты и цифр. Цель функции — визуально отобразить ширину окна терминала.
Альтернативой этой функции может быть использование встроенных команд терминала, таких как tput
, чтобы получить информацию о размере окна и затем выводить линейку в соответствии с этими значениями.
Функция ruler()
не принимает аргументы. Она использует переменную COLUMNS
, которая уже установлена в окружении терминала и представляет ширину текущего окна.
Пример использования:
$ ruler()
....^....|....^....
$ ruler()
12345678901234567890