Команда
echo является одной из самых основных и часто используемых команд в Linux. Переданные аргументы echo выводятся на стандартный вывод.
echo - это оболочка, встроенная в
Bash и большинство других популярных оболочек, таких как
Zsh и
Ksh. Поведение echo немного отличается от оболочки к оболочке.
Существует также отдельная
/usr/bin/echo утилита, но обычно встроенная версия оболочки имеет преимущество.
Рассмотрим встроенную версию Bash echo.
Синтаксис echo команды следующий:
echo [-neE] [ARGUMENTS]
- При использовании этой -n опции завершающий символ новой строки подавляется.
- Если -e опция указана, будут интерпретированы следующие символы с обратной косой чертой:
\\ - Отображает символ обратной косой черты.
\a - Оповещение (BEL)
\b - Отображает символ возврата на одну позицию.
\c - Подавить дальнейший вывод
\e - Отображает escape-символ.
\f - Отображает символ подачи формы.
\n - Отображает новую строку.
\r - Отображает возврат каретки.
\t - Отображает горизонтальную вкладку.
\v - Отображает вертикальную вкладку.
- -E Опция отключает интерпретацию Escape последовательностей. Это по умолчанию.
- Если включена опция -e, вы можете использовать такие Escape последовательности для вставки специальных символов:
/c - удалить перевод строки;
/t - горизонтальная табуляция;
/v - вертикальная табуляция;
/b - удалить предыдущий символ;
/n - перевод строки;
/r - символ возврата каретки в начало строки.[/li]
Есть несколько моментов, которые следует учитывать при использовании echo команды.
- Оболочка заменит все переменные, подстановочные знаки и специальные символы перед передачей аргументов в echo команду.
- Хотя это и не обязательно, но хорошая практика программирования заключать аргументы, передаваемые echo в двойные или одинарные кавычки.
- При использовании одинарных кавычек будет '' сохранено буквальное значение каждого символа, заключенного в кавычки. Переменные и команды не будут расширены.
В следующих примерах показано, как использовать команду echo.
Вывести строку текста на стандартный вывод echo Hello, World!
Hello, World!
Отобразить строку текста, содержащую двойную кавычкуЧтобы напечатать двойные кавычки, заключите их в одинарные кавычки или экранируйте их символом обратной косой черты.
echo 'Hello "Baksdev"'
echo "Hello \"Baksdev\""
Hello "Baksdev"
Показать строку текста, содержащую одну кавычкуЧтобы напечатать одинарную кавычку, заключите её в двойные кавычки или используйте квотирование ANSI-C.
echo "I'm a Linux user."
echo $'I\'m a Linux user.'
I'm a Linux user.
Показать сообщение, содержащее специальные символыИспользуйте
-e опцию, чтобы включить интерпретацию escape-символов.
echo -e "You know nothing, Jon Snow.\n\t- 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
Baksdev
$USER является переменной оболочкой , которая содержит имя пользователя.
Отобразить вывод командыИспользуйте
$(command) выражение, чтобы включить вывод команды в echo аргумент. Следующая команда отобразит текущую дату:
echo "The date is: $(date +%D)"
The date is: 04/17/19
Отобразить в цветеИспользуйте escape-последовательности ANSI, чтобы изменить цвета переднего плана и фона или установить свойства текста, такие как подчеркивание и полужирный.
echo -e "\033[1;37mWHITE" echo -e "\033[0;30mBLACK" echo -e "\033[0;34mBLUE" echo -e "\033[0;32mGREEN" echo -e "\033[0;36mCYAN" echo -e "\033[0;31mRED" echo -e "\033[0;35mPURPLE" echo -e "\033[0;33mYELLOW" echo -e "\033[1;30mGRAY"
Несмотря на свою простоту, команда echo может применяться для решения различных задач и незаменима при написании простых скриптов.
При создании темы использованы статьи:
КОМАНДА ECHO В LINUX С ПРИМЕРАМИ и
КОМАНДА ECHO В LINUX.