Команда echo

Команда echo выводит текст. Это одна из базовых команд, которая есть в большинстве операционных систем. Она часто используется в скриптах, пакетных файлах, в качестве дополнения к другим командам и везде, где вам может потребоваться вывод текстовой информации.

Важно: в данном руководстве мы будем рассматривать отдельную программу, /bin/echo. В большинстве командных оболочек, таких как bash, ksh и csh, echo
реализована как встроенная команда. Она работает аналогичным образом, но опции могут немного отличаться. Если вы пользуетесь оболочкой bash, то используемый по умолчанию вариант программы можно определить командой type:

type echo
echo is a shell builtin

Чтобы запустить именно отдельную программу, а не встроенную в оболочку, нужно указать для нее полный путь:

/bin/echo

Синтаксис

echo [ОПЦИЯ]... [СТРОКА]...

Вызов справки

echo --help

Узнать версию

echo --version

Опции

Эти опции указываются перед строкой и задают поведение команды:
-n не выводить символ начала новой строки после окончания вывода.
-e включить интерпретацию управляющих последовательностей (рассмотрены ниже).
-E отключить интерпретацию управляющих последовательностей. Режим по умолчанию.
—help вывести справочное сообщение и выйти.
—version вывести информацию о версии и выйти.

Управляющие последовательности

Если указать опцию -e, в строке будут определяться следующие управляющие последовательности:

\\ символ обратного слэша (\)
\a звуковое уведомление
\b удаление предыдущего символа
\c прекратить дальнейший вывод
\e символ Escape, эквивалент нажатия одноименной клавиши
\f перевод страницы
\n новая строка
\r возврат каретки
\t горизонтальная табуляция
\v вертикальная табуляция

Примеры

Ввод текстовой строки и ее вывод в стандартный поток вывода:

echo Hello, world!
Hello, world!

Результат следующей команды аналогичный:

echo 'Hello, World!'
Hello, world!

Однако, различие заключается в том, что первая команда воспринимает каждую строку как отдельный аргумент, а вторая воспринимает всю строку в кавычках как единое целое. В этом случае все специальные символы не интерпретируются и выводятся буквально.

Например, в оболочке bash переменные начинаются с символа доллара. В следующей команде символ доллара в кавычках выводится буквально, а вне кавычек — интерпретируется как начало имени переменной, поэтому выводится ее значение:

echo 'Значение переменной $PATH:' $PATH
Значение переменной $PATH: /home/hope/bin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

По умолчанию управляющие последовательности не интерпретируются:

echo 'Здесь \bне \bудаляются \bпредыдущие \bсимволы.'
Здесь \bне \bудаляются \bпредыдущие \bсимволы.

Для их интерпретации нужно указать опцию -e:

echo -e 'Здесь \bне \bудаляются \bпредыдущие \bсимволы.'
Здесьнеудаляютсяпредыдущиесимволы

Последовательность ‘\n’ — это символ начала новой строки:

echo -e 'Здесь\nмы\nразбили\nтекст\nна\nстроки.'
Здесь
мы
разбили
текст
на
строки.

Последовательность ‘\t‘ разделяет выводимые данные горизонтальной табуляцией:

echo -e 'Здесь \tмы \tиспользуем \tтабуляцию'
Здесь    мы   используем   табуляцию

Попробуем одновременно указать символ новой строки ‘\n‘ и горизонтальной табуляции ‘\t‘:

echo -e '\n\tЗдесь \n\tмы \n\tиспользуем \n\tтабуляцию'
    Здесь
    мы
    используем
    табуляцию

Последовательность ‘\v‘ задает вертикальную табуляцию:

echo -e '\vЗдесь \vмы \vиспользуем \vтабуляцию'
Здесь
     мы
        используем
                   табуляцию

Символы новой строки и табуляции можно указывать в любом необходимом количестве.

Управляющая последовательность ‘\r‘ — это имитация возврата каретки:

echo -e 'Вот \rчто такое возврат каретки'
что такое возврат каретки

Последовательность ‘\c‘ прекращает вывод в указанном месте и не выводит символ новой строки:

echo -e 'Статьи и полезные заметки для \cсистемных администраторов'
Статьи и полезные заметки для root@desktop:~$

Управляющая последовательность ‘\a‘ вызывает звуковой сигнал:

echo -e ‘Статьи и полезные заметки для \aсистемных администраторов’
Статьи и полезные заметки для системных администраторов

Убедитесь, что у вас включен звук.

Опция ‘-n’ просто исключает вывод символа новой строки в конце выполнения команды:

echo -n 'Статьи и полезные заметки для системных администраторов'
Статьи и полезные заметки для системных администраторов root@desktop:~$

Для вывода в файл, а не в стандартный поток вывода, можно использовать команду echo с оператором перенаправления:

echo 'Тестовая страница' > testpage
cat testpage
Тестовая страница

Заключение

Команда echo совсем простая, и у нее мало опций, но свою функцию она полностью выполняет. Она элементарна в освоении — достаточно просто повторить приведенные примеры. Но при необходимости всегда можно обратиться к соответствующей man-странице для получения исчерпывающих подробностей.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

ИТ Проффи

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: