Материал просмотрен 1,845 раз(а)

Использование команды printf

Предыдущую программу можно было написать, используя вместо echo команду printf. Функция у этой команды такая же, но есть дополнительные возможности по форматированию вывода.

Пример:

#!/bin/sh

printf “WE LIKE LITL-ADMIN.RU\n”

Внимание привлекает вот эта конструкция \n в конце текстовой строки. Оговорю сразу, что символ “\” означает символ отмены, т.е. следующий за ним символ должен приобретать иной смысл. Конкретно \n означает – перенос на новую строку. Вот и таблица символов форматирования:

\a Выдача звукового сигнала терминалом. Используется динамик компьютера.
\b Выдача символа обратной косой черты
\f Выдача символа подачи страницы (очистка экрана/загружается страница в принтер)
\r Выдача символа возврата каретки (курсор перемещается в начало строки, но не передвигается на новую строку. Таким образом всё, что будет выводится после \r перезапишет текущую строку.
\n Выдача символа новой строки (возвращает курсор в начало строки и переводит каретку на новую строку)
\t Выдача символа табуляции
\v Выдача символа вертикальной табуляции, т.е. перевод на новую строку, без возвращения курсора в начало строки.
\’ Выдача символа одинарной кавычки
\\ Выдача символа двойной обратной косой черты
\code Выдача ASCII-значения восьмеричного одно-, двух- или трёхбитового значения code. Практически не используется.

Примечательно так же то, что команда printf не делает перевод на новую строку в конце вывода. Например:

echo “Hello”

echo ” world”

выведет

Hello

world

а вот пример с командой printf:

printf “Hello ”

printf “World\n”

выведет Hello World в одну строку.