Как получить функцию оболочки для вывода линейки шириной окна терминала.

ruler() { for s in '....^....|' '1234567890'; do w=${#s}; str=$( for (( i=1; $i<=$(( ($COLUMNS + $w) / $w )) ; i=$i+1 )); do echo -n $s; done ); str=$(echo $str | cut -c -$COLUMNS) ; echo $str; done; }


Команда ruler() создает функцию оболочки для вывода линейки шириной окна терминала. Выводит линейку из точек и вертикальных полос, а затем цифры от 1 до 10, разбитые на соответствующее количество знаков. Цель функции — помочь увидеть, где находится нужная колонка в окне терминала. Командой cut строка с линейкой обрезается до ширины текущего окна. Возможная альтернатива — использование утилиты numfmt или команды seq для замены цифр на одну, две, три и т.д. пробелов из списка чисел.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *