Команда Linux echo: Примеры и объяснение

Дистрибутивы Linux позволяют вам самостоятельно настраивать и управлять системой. В этом контексте команда bash echo относится к одной из наиболее используемых команд. Она используется в сценариях bash и пакетных файлах для вывода текста состояния в файл или на экран. Мы объясним, как работает команда Linux echo и как, например, с ее помощью можно определить цвета шрифта и фона.

Что такое команда echo и как она работает?

Команда Linux echo повторяет то, что вы сказали ей повторить. Эта функция чрезвычайно проста, но необходима именно для этого. Например, без echo вы не получили бы видимого вывода от сценариев shell. Shell — это пользовательский интерфейс, в котором Вы можете вводить различные команды, такие как команда Linux tail, команда Linux head, команда Linux cat или команда Linux echo.

Как именно работает команда Linux echo и каков ее синтаксис? Вот пример общего синтаксиса команды:

 

echo [option] [string]

Базовая операция echo одинакова во всех языках программирования. Вы делаете ввод — который в большинстве случаев имеет форму строки — и он принимается и выводится снова без изменений.

Примечание

Оболочка пользовательского интерфейса или интерпретатора командной строки также называется оболочкой bash. Bash — это стандартная оболочка в дистрибутивах Linux и текстовое окно, в котором вы вводите свои команды. Программа echo является элементарной частью Ubuntu и предустановлена в каждой системе.

Как выводить текст и информацию в Linux с помощью команд echo

В нашем первом примере мы хотим вывести текст и содержимое переменных в bash и терминале соответственно. Чтобы написать текст «Это пример», введите в терминал следующий код:

$ echo This is an example 
This is an example 

Чтобы максимально избежать ошибок, мы рекомендуем заключать текст в кавычки:

$ echo "This is an example"
This is an example 

На следующем шаге мы хотим вывести переменную. Здесь достаточно ввести имя переменной, например PWD (для Print Working Directory или ваш рабочий каталог). Тогда команда будет выглядеть следующим образом:

$ echo $PWD 
/Users/Name/Desktop

Также есть возможность комбинировать вывод переменных с текстом, как в этом примере:

$ echo "You are in the directory: $PWD" 
You are in the directory: /Users/Name/Desktop
Примечание

Для вывода информации существует не только команда bash echo, но и printf и tput.tput является более сложным инструментом и также может быть использован для сброса информации. С помощью printf и echo, однако, можно выводить только информацию.

Какие управляющие символы используются для команды echo?

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

Внимание! Echo понимает управляющие символы, только если вы установили опцию -e. Поэтому в следующем примере «n» отображается только как текст. (Управляющий символ «n» означает новую строку или разрыв текста).

 

 

$ echo "n"

n

Однако, если вы добавите -e, как в следующем примере, в вашем тексте произойдет разрыв текста:

$ echo -e "n"
Примечание

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

Коды Escape

Значение

a

Звук тревоги

b

Один символ назад

c

Подавление обертывания текста

f

Назад

n

Разрыв строки

r

Возврат к началу строки

t

Табулятор (горизонтальный)

v

Табулятор (вертикальный)

Вывод символа обратной косой черты

nn

ASCII символы в восьмеричной форме (только sh и ksk)

nnn

Символы ACSII в восьмеричной форме (только для bash)

Как можно определить цвета шрифта и фона с помощью echo?

Команда Linux echo также может быть использована для задания атрибутов текста, таких как цвета шрифта и фона при выводе текста. Для этого нужно заключить все символы в кавычки или сразу записать цвета в переменные, чтобы сделать строку более читабельной. Первый вариант выглядит следующим образом (цвет всегда вводится с 33[, 31m здесь означает красный цвет шрифта):

$ echo -e "33[31mThis is a red text"

Теперь, чтобы сбросить все атрибуты, введите эту строку:

 

$ echo -e "33[0m"

Однако он станет более читабельным, если вы заранее определите цвета как переменные в вашем сценарии bash:

 

red='33[31m'
reset='33[0m'

Вы можете просто использовать цвет в качестве имени команды echo:

 

$ echo -e "${red}This is a red text.${reset}And now the text is normal again."  

Ниже приведен обзор различных управляющих кодов для различных цветов шрифта и фона:

 

Управляющий символ

Значение

33[30m

Цвет шрифта черный

33[31m

Цвет шрифта красный

33[32m

Цвет шрифта зеленый

33[33m

Цвет шрифта желтый

33[34m

Цвет шрифта синий

33[35m

Цвет шрифта пурпурный

33[36m

Цвет шрифта бирюзовый

33[37m

Цвет шрифта белый

33[40m

Фон черный

33[41m

Фон красный

33[42m

Фон зеленый

33[43m

Фон желтый

33[44m

Фон синий

33[45m

Фон пурпурный

33[46m

Бирюзовый фон

33[47m

Фон серый

Как задать определенные свойства текста с помощью echo?

Помимо цвета шрифта и фона, команда Linux echo может быть использована для задания атрибутов текста, таких как жирный шрифт или подчеркивание. Ниже приведены коды для различных свойств текста:

Управляющий символ

Значение

33[0m

Сбросить все атрибуты

33[1m

Жирный шрифт

33[4m

Подчеркнуть

33[5m

Мигающий

33[7m

инверсное отображение

Если теперь вы хотите написать красный текст жирным шрифтом, код будет следующим:

$ echo -e "33[1;31mThis is a red text in bold."
Совет

Мы также привели для вас обзор всех важных команд Linux.

Оцените статью
cdelat.ru
Добавить комментарий