Команда echo — одна из самых основных и часто используемых команд в Linux. Аргументы, переданные в echo выводятся на стандартный вывод.
echo обычно используется в сценариях оболочки для отображения сообщения или вывода результатов других команд.
Содержание
эхо-команда
echo — это оболочка, встроенная в Bash и большинство других популярных оболочек, таких как Zsh и Ksh. Его поведение немного отличается от оболочки к оболочке.
Существует также отдельная утилита /usr/bin/echo , но обычно встроенная версия оболочки имеет приоритет. Мы рассмотрим встроенную в Bash версию echo .
Синтаксис команды echo следующий:
echo [-neE] [ARGUMENTS]
- Когда используется опция
-n, завершающий символ новой строки подавляется. - Если задана опция
-eбудут интерпретироваться следующие символы, экранированные обратной косой чертой:-
\— отображает обратную косую черту. -
a— Предупреждение (BEL) -
b— отображает символ возврата. -
c— подавить любой дальнейший вывод -
e— отображает escape-символ. -
f— отображает символ перевода страницы. -
n— отображает новую строку. -
r— отображает возврат каретки. -
t— отображает горизонтальную вкладку. -
v— отображает вертикальную вкладку.
-
- Параметр
-Eотключает интерпретацию escape-символов. Это значение по умолчанию.
При использовании команды echo следует учитывать несколько моментов.
- Оболочка заменит все переменные, сопоставление подстановочных знаков и специальные символы перед передачей аргументов команде
echo. - Хотя это и не обязательно, рекомендуется заключать аргументы, передаваемые в
echoв двойные или одинарные кавычки. - При использовании одинарных кавычек
''буквальное значение каждого символа, заключенного в кавычки, будет сохранено. Переменные и команды расширяться не будут.
echo Примеры
В следующих примерах показано, как использовать команду echo:
-
Вывести строку текста на стандартный вывод.
echo Hello, World!Hello, World! -
Отобразите строку текста, содержащую двойные кавычки.
Чтобы напечатать двойную кавычку, заключите ее в одинарные кавычки или экранируйте символ обратной косой черты.
echo 'Hello "Linuxize"'echo "Hello "Linuxize""Hello "Linuxize" -
Отобразите строку текста, содержащую одинарную кавычку.
Чтобы напечатать одинарную кавычку, заключите ее в двойные кавычки или используйте кавычки ANSI-C .
echo "I'm a Linux user."echo $'I'ma Linux user.'I'm a Linux user. -
Вывести сообщение, содержащее специальные символы.
Используйте параметр
-eчтобы включить интерпретацию escape-символов.echo -e "You know nothing, Jon Snow.nt- Ygritte"You know nothing, Jon Snow. - Ygritte -
Символы соответствия шаблону.
Команда
echoможет использоваться с символами сопоставления с образцом, такими как подстановочные знаки. Например, приведенная ниже команда вернет имена всех файлов.phpв текущем каталоге.echo The PHP files are: *.phpThe PHP files are: index.php contact.php functions.php -
Перенаправить в файл
Вместо отображения вывода на экране вы можете перенаправить его в файл с помощью операторов
>,>>.echo -e 'The only true wisdom is in knowing you know nothing.nSocrates' >> /tmp/file.txtЕсли файл file.txt не существует, команда создаст его. При использовании
>файл будет перезаписан, а символ>>добавит вывод в файл .Используйте команду
catдля просмотра содержимого файла:cat /tmp/file.txtThe only true wisdom is in knowing you know nothing. Socrates -
Отображение переменных
echoтакже может отображать переменные. В следующем примере мы напечатаем имя текущего вошедшего в систему пользователя:echo $USERlinuxize$USER— это переменная оболочки, в которой хранится ваше имя пользователя. -
Отображение вывода команды
Используйте выражение
$(command)чтобы включить вывод команды в аргументecho. Следующая команда отобразит текущую дату :echo "The date is: $(date +%D)"The date is: 04/17/19 -
Отображение в цвете
Используйте escape-последовательности ANSI, чтобы изменить цвета переднего плана и фона или установить свойства текста, такие как подчеркивание и полужирный шрифт.
echo -e "