Bash сценарии: Как выводить и форматировать текст в оболочке Linux

Сценарии Bash очень популярны и являются одним из самых простых языков сценариев. Как и в любом другом языке программирования или написания сценариев, вам иногда придется выводить текст на терминал. Это может происходить во многих сценариях, например, когда вы хотите вывести содержимое файла или проверить значение переменной. Программисты также отлаживают свои приложения, выводя значения переменных на консоль. Прежде чем мы перейдем к созданию сценариев Bash, чему будет посвящен другой учебник, давайте рассмотрим различные способы вывода текста в терминале.

Echo - это самая важная команда, которую необходимо знать для вывода текста в терминал. Как следует из названия, Echo печатает числа или строки на стандартный вывод терминала. Она также имеет ряд опций, которые перечислены в следующей таблице.

Опция Определение
-n Не печатать завершающую новую строку
-E Отключить интерпретацию символов, экранированных обратной косой чертой
-e Включить интерпретацию символов обратной косой черты
\a Предупреждение
\b Backspace (Обратный пробел)
\c Подавлять новую строку в конце строки
\e Escape (Эскейп)
\f Формировать подачу
\\ Обратная косая черта
\n Новая строка
\r Возврат каретки
\t Горизонтальная табуляция
\v Вертикальная табуляция

Согласно документации Linux, синтаксис команды echo следующий.

Теперь мы рассмотрим различные способы вывода текста на терминал.

Отправка текста на стандартный вывод

Чтобы вывести на терминал любую строку, число или текст, введите следующую команду и нажмите Enter.

На терминале появится следующий вывод

Отправка текста в stdout с помощью команды echo

Вывод переменной

Давайте объявим переменную и выведем ее значение на терминал. Предположим, что x - это переменная, которую мы инициализировали значением 100.

Теперь выведем значение переменной на терминал.

На терминале будет выведено значение 100. Аналогичным образом можно хранить строку в переменной и выводить ее на терминал.

Вывод содержимого переменной

Удалить пробелы между словами

Это одна из моих любимых опций команды echo, поскольку она удаляет все пробелы между разными словами в предложениях и объединяет их вместе. В этой функции мы будем использовать две опции, как указано в таблице 1.

Как видно из приведенного выше примера, мы включаем интерпретацию обратных косых черточек, а также добавляем обратный пробел. Был получен следующий результат.

Удаление пробела между словами с помощью обратного пробела

Вывод слова в новой строке

Эта опция echo очень полезна при работе со сценариями bash. Чаще всего вам нужно перейти к следующей строке после завершения работы. Поэтому лучше всего использовать именно эту опцию.

На выходе каждое слово будет отображаться в отдельной строке, как показано на скриншоте ниже.

Добавьте новые строки в текстовый вывод

Вывод текста со звуком

Это простой вариант вывода текста со звуком или оповещением. Для этого введите следующую команду.

Убедитесь, что уровень громкости в системе достаточно высок, чтобы вы могли услышать крошечный колокольчик, который звучит при выводе текста на терминал.

Удаление окончания строки

Другая опция echo - удалить новую строку, чтобы все выводилось на одной строке. Для этого мы используем опцию "\c", как показано на рисунке ниже.

Будет показан следующий результат

Удаление новой строки

Добавление возврата каретки в вывод

Чтобы добавить определенный возврат каретки в вывод, у нас есть опция "\r".

На терминале появится следующий вывод.

Добавить возврат каретки в вывод

 

Использование табуляции в выводе

При печати вывода на терминале вы можете добавить горизонтальные и вертикальные табуляции. Это удобно для более чистого вывода. Чтобы добавить горизонтальные табуляции, нужно добавить "\t", а для вертикальных табуляций - "\v". Мы сделаем пример для каждого из них, а затем комбинированный.

Вывод для этой команды будет выглядеть следующим образом

Используйте табуляцию для форматирования выводимого текста

 

Вывод для этой команды будет выглядеть следующим образом

Использование \v в выводе bash

Теперь мы объединим этот пример для имеющегося набора предложений.

echo -e "Wake up, Neo.. \vThe Matrix \thas you."

На терминале будет выведено следующее.

Пример расширенного форматирования

Это все опции, которые можно использовать для вывода текста в терминале. Это важная функция, которую нужно изучить, потому что она поможет вам, когда вы начнете работать над сценариями bash.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий