Команда echo - это очень простая и в то же время часто используемая встроенная команда оболочки Bash. Она имеет только одно назначение - выводить строку текста в терминал, но применяется очень часто в различных скриптах, программах, и даже для редактирования конфигурационных файлов.
В этой статье мы рассмотрим что представляет из себя команда echo linux, как ее можно использовать и в каких ситуациях. Но сначала рассмотрим синтаксис самой команды.
Содержание статьи
Команда echo linux
Команда echo - это не системная утилита, у нее нет исполняемого файла. Она существует только внутри интерпретатора Bash. Синтаксис команды echo linux очень прост:
$ echo опции строка
Опций всего несколько, давайте рассмотрим их, чтобы вы могли лучше ориентироваться в работе утилиты:
- -n - не выводить перевод строки;
- -e - включить поддержку вывода Escape последовательностей;
- -E - отключить интерпретацию Escape последовательностей.
Это все опции, если включена опция -e, то вы можете использовать такие Escape последовательности для вставки специальных символов:
- /c - удалить перевод строки;
- /t - горизонтальная табуляция;
- /v - вертикальная табуляция;
- /b - удалить предыдущий символ;
- /n - перевод строки;
- /r - символ возврата каретки в начало строки.
Пожалуй, это все, что нужно знать о команде echo, а теперь давайте рассмотрим как с ней работать.
Примеры работы echo
Давайте рассмотрим как пользоваться echo. Сначала просто выведем строку на экран:
echo Linux Open Source Software Technologies

Также можно вывести значение переменной. Сначала объявим переменную:
export VAR=losst
Затем выведем ее значение:
echo Наш сайт $VAR
Как уже говорилось, с помощью опции -e можно включить интерпретацию специальных последовательностей. Последовательность \b позволяет удалить предыдущий символ. Например, удалим все пробелы из строки:
echo -e "Linux \bopen \bsource \bsoftware \btechnologies"
Последовательность \n переводит курсор на новую строку:
echo -e "Linux \nopen \nsource \nsoftware \ntechnologies"
С помощью \t вы можете добавить горизонтальные табуляции:
echo -e "Linux \topen \tsource \tsoftware \ttechnologies"
Можно совместить переводы строки и табуляции:
echo -e "Linux \tnopen \tnsource \tnsoftware \tntechnologies"
Точно так же можно применить вертикальную табуляцию:
echo -e "Linux \vopen \vsource \vsoftware \vtechnologies"
С помощью последовательности \r можно удалить все символы до начала строки:
echo -e "Linux \ropen source software technologies"
Последовательность -c позволяет убрать перевод на новую строку в конце сообщения:
echo -e "Linux open source software technologies\c"
Дальше - больше. Вы можете разукрасить вывод echo с помощью последовательностей управления цветом Bash. Для доступны такие цвета текста:
- \033[30m - чёрный;
- \033[31m - красный;
- \033[32m - зелёный;
- \033[33m - желтый;
- \033[34m - синий;
- \033[35m - фиолетовый;
- \033[36m - голубой;
- \033[37m - серый.
И такие цвета фона:
- \033[40m - чёрный;
- \033[41m - красный;
- \033[42m - зелёный;
- \033[43m - желтый;
- \033[44m - синий;
- \033[45m - фиолетовый;
- \033[46m - голубой;
- \033[47m - серый;
- \033[0m - сбросить все до значений по умолчанию.
Например. раскрасим нашу надпись в разные цвета:
echo -e "\033[35mLinux \033[34mopen \033[32msource \033[33msoftware \033[31mtechnologies\033[0m"
С основными параметрами команды echo разобрались, теперь рассмотрим еще некоторые специальные символы bash. Вы можете вывести содержимое текущей папки просто подставив символ *:
echo *
Также можно вывести файлы определенного расширения:
echo *.mkv
Я уже говорил, что echo можно использовать для редактирования конфигурационных файлов. Вы можете использовать запись echo в файл linux, если он пуст:
echo 1 > /proc/sys/net/ipv4/ip_forward
Если файл не пуст, и вам необходимо добавить свою строчку в конец файла используйте символ перенаправления вывода >>:
echo "UUID=09ec0871-2f55-4dd5-aeb2-cacc4a67907c /var/tmp btrfs subvol=@/var/tmp 0 0" >> /etc/fstab
Если строка содержит какие-либо специальные символы или может быть понята интерпретатором неоднозначно, следует заключить ее в кавычки.
Выводы
В этой статье была рассмотрена команда echo linux. Несмотря на свою простоту, она может применяться для решения различных задач и незаменима при написании простых скриптов. Надеюсь, эта информация была вам полезной.
Anubis – это максимально легкое open-source решение, созданное специально для защиты небольших веб-ресурсов от бесконечного потока запросов от ботов и AI парсеров. Этот инструмент можно считать "ядерным вариантом", потому что он заставляет ботов выполнять вычисления похожие на майнинг криптовалюты. Но это неплохая альтернатива для тех, кто не может или не хочет использовать Cloudflare. Посмотреть детали
















спасибо
Здорово. Было б круто иметь подобную википедию по коммандам 🙂
Такая википедия есть, и она вызывается в консоли так:
man 🙂
+1000, самая полезная команда это man, первым нужно изучить man по man, и все попрет
Спасибо!!!
Самое главное применение эхо - внедрять инъекции 🙂
echo "/ union" > /mnt/my_usb/persistence.conf
Зачем нужен echo в этом случае и что делает union и >. Спасибо.
"/ union" - будет записан в файл /mnt/my_usb/persistence.conf?
Что значит / union?
Как это у echo нет исполняемого файла? А это что?
~$ which echo
/bin/echo
Команды две. Есть встроенная в шелл. И есть отдельная. /bin/echo.
man почитайте. \с означает не совсем то, о чем вы рассказываете
Еще если вы напишите echo "ваш текст" >~/название вашего файла.txt, то создастся файл с расширением .txt под названием "название вашего файла", содержащий в себе запись "ваш текст"
Cупер. Всю статью одним абзацем! Просто замечательно!...И за статью спасибо!
а что означает сия конструкция
echo -e '\r\e[K'
???
echo -e '\r' = echo -e '\x0d'
echo -e '\r' | xxd как раз ивыведет 0d0a
Те CR+NL или chr(13)+chr(10)
Другой способ
echo -e '\r' >~/out.txt и открыть полученный файл в mc
Затем нажать f3 f4 и увидишь те же hex овые последовательности
Вообще всё что с \ начинается тн escape последовательности
\t tabulation или chr(9) или она же \x09 горизотнтальная табуляция не печатный символ втаблице ascii символы от 0-32 управлящие
Доброго времени суток.
А разве не этот слэш \ используется для escape последовательностей?
Да, этот.
У вас в начале опечатка, когда команды перечисляете. Вместо \ у вас /
как вывести два процесса например
tcpdump -i lo tcp port 1234 -w /mnt/media/user/tcp.pcap &
echo = $!
journalctl -u test-test -f > /mnt/media/user/journalctl.log &
echo = $!
как записать второй процесс чтобы по команде можно было бы их обоих kill -9 $!
Кто знает прошу помочь, Спасибо.
Последний пример:
$ echo "UUID=09ec0871-2f55-4dd5-aeb2-cacc4a67907c /var/tmp btrfs subvol=@/var/tmp 0 0" >> /etc/fstab
так не получится.
Правильно будет:
$ echo "UUID=09ec0871-2f55-4dd5-aeb2-cacc4a67907c /var/tmp btrfs subvol=@/var/tmp 0 0" | sudo tee --append /etc/fstab
подскажите, что означает echo ** ?
Спасибо! Лаконично и доступно +
Информативно, замечательно!
echo $?
# Выводит статус выполнения предыдущей команды (0\1\127\etc)