Команда 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: *.php
The 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.txt
The only true wisdom is in knowing you know nothing. Socrates
- Отображение переменных
echo
также может отображать переменные. В следующем примере мы напечатаем имя текущего вошедшего в систему пользователя:echo $USER
linuxize
$USER
— это переменная оболочки, в которой хранится ваше имя пользователя. - Отображение вывода командыИспользуйте выражение
$(command)
чтобы включить вывод команды в аргументecho
. Следующая команда отобразит текущую дату :echo "The date is: $(date +%D)"
The date is: 04/17/19
- Отображение в цветеИспользуйте escape-последовательности ANSI, чтобы изменить цвета переднего плана и фона или установить свойства текста, такие как подчеркивание и полужирный шрифт.
echo -e "33[1;37mWHITE"
echo -e "33[0;30mBLACK"
echo -e "33[0;34mBLUE"
echo -e "33[0;32mGREEN"
echo -e "33[0;36mCYAN"
echo -e "33[0;31mRED"
echo -e "33[0;35mPURPLE"
echo -e "33[0;33mYELLOW"
echo -e "33[1;30mGRAY"
Выводы
К настоящему времени вы должны хорошо понимать, как работает команда echo
.
Добавить комментарий