Выполните цикл pre -для вычисления самого длинного имени файла, а затем используйте его в качестве параметра интервала:
longest=0
for file in *.bash
do
[ "${#file}" -gt "$longest" ] && longest=${#file}
done
#... for your execution loop
printf "running the script - %${longest}s\t- "
printf "%s\n" "$var"
Я предполагаю, что все ваши скрипты охватываются шаблоном *.bash
; отрегулируйте это по мере необходимости. Начальные петли вычисляют необходимую ширину; начальный printf
использует эту переменную для форматирования ширины поля скрипта для каждой итерации цикла for
.