Я понимаю ваш вопрос.
Используя другой ответ в качестве основы для моего:
Если вы хотите заполнить каждую из ПАРАМ, просто добавьте числовой аргумент в printf, и он будет дополнять это количество символов в поле.
Pad на 20 символов:
printf "% s [WARN]% 20s% 20s% 20s" date +"%d/%b/%G-%T"
foo bar baz
Примеры:
printf "%s [WARN] %16s %16s %16s" [`date +"%d/%b/%G-%T"`] foo bar baz
02/Jun/2010-11:22:54 [WARN] foo bar baz
Longer ...
printf "%s [WARN] %16s %16s %16s" [`date +"%d/%b/%G-%T"`] longerfoo longerbar longerbaz
02/Jun/2010-11:23:42 [WARN] longerfoo longerbar longerbaz
Намного дольше ...
printf "%s [WARN] %16s %16s %16s" [`date +"%d/%b/%G-%T"`] muchlongerfoo muchlongerbar muchlongerbaz
02/Jun/2010-11:24:12 [WARN] muchlongerfoo muchlongerbar muchlongerbaz
Попробуйте это на консоли. Это работает.