Команда 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=kovalets
Затем выведем ее значение:
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. Несмотря на свою простоту, она может применяться для решения различных задач и незаменима при написании простых скриптов. Надеюсь, эта информация была вам полезной.