Jump to content

эхо (команда)

(Перенаправлено из Echo (команда EFI) )
эхо
Оригинальный автор(ы) Дуглас Макилрой
( AT&T Bell Laboratories )
Разработчик(и) Различные с открытым исходным кодом и коммерческие разработчики разработчики
Операционная система Multics , Unix , Unix-like , V , Plan 9 , Inferno , FLEX , TRIPOS , AmigaDOS , Z80-RIO , OS-9 , DOS , MSX-DOS , Panos , FlexOS , SISNE plus , OS/2 , Windows , ReactOS , MPE/iX , КолибриOS , SymbOS
Платформа Кросс-платформенный
Тип Команда

В вычислениях , echo — это команда , которая выводит строки, переданные ей в качестве аргументов . Это команда, доступная в различных операционной системы оболочках и обычно используемая в сценариях оболочки и пакетных файлах для вывода текста состояния на экран. [1] или компьютерный файл , или исходную часть конвейера .

Реализации

[ редактировать ]

Команда доступна в следующих операционных системах:

Многие оболочки, включая все Bourne -подобные (такие как Bash [14] или зш [15] ) и Csh -подобные оболочки, а также COMMAND.COM и cmd.exe реализуют echo как встроенная команда .

Команда также доступна в оболочке EFI . [16]

echo началось в Multics . запрограммировал его на языке C После того, как Дуг Макилрой как «упражнение для пальцев» и доказал свою полезность, он стал частью версии 2 Unix . echo -n в версии 7 заменено prompt, (который вел себя как echo но без завершения вывода разделителем строк). [17]

В PWB/UNIX и более поздних версиях Unix System III echo начал расширять escape-последовательности C, такие как \n с той заметной разницей, что восьмеричные escape-последовательности выражались как \0ooo вместо \ooo в С. [18]

Восьмое издание Unix echo расширение побега произошло только после прохождения -e вариант, [19] и это поведение было скопировано несколькими другими реализациями, такими как встроенная функция echo команда Bash или zsh и GNU echo.

В MS-DOS команда доступна в версии 2 и более поздних. [20]

В настоящее время существует несколько несовместимых реализаций echo существуют в разных операционных системах (часто в нескольких в одной системе), некоторые из них по умолчанию расширяют escape-последовательности, некоторые нет, некоторые принимают параметры (список которых варьируется в зависимости от реализации), некоторые нет.

Спецификация POSIX echo[21] оставляет поведение неопределенным, если первый аргумент -n или любой аргумент содержит символы обратной косой черты, в то время как спецификация Unix (опция XSI в POSIX) требует расширения (некоторых) последовательностей и не допускает никакой обработки параметров. На практике многие echo реализации несовместимы со средой по умолчанию.

Из-за таких различий в поведении echo считается непереносимой командой в Unix-подобных системах. [22] и printf команда Вместо этого предпочтительна (если она доступна, введенная в девятом издании Unix).

Примеры использования

[ редактировать ]
C:\>echo Hello world
Hello world

Используя ANSI escape-коды SGR , совместимые терминалы могут распечатывать цветной текст.

Использование реализации в стиле UNIX System III :

BGRED=`echo "\033[41m"`
FGBLUE=`echo "\033[35m"`
BGGREEN=`echo "\033[42m"`

NORMAL=`echo "\033[m"`

Или реализация в стиле Unix версии 8 (например, Bash, если он не в режиме совместимости с Unix):

BGRED=`echo -e "\033[41m"`
FGBLUE=`echo -e "\033[35m"`
BGGREEN=`echo -e "\033[42m"`

NORMAL=`echo -e "\033[m"`

и после:

echo "${FGBLUE} Text in blue ${NORMAL}"
echo "Text normal"
echo "${BGRED} Background in red"
echo "${BGGREEN} Background in Green and back to Normal ${NORMAL}"

Портативно с printf:

BGRED=`printf '\33[41m'`
NORMAL=`printf '\33[m'`
printf '%s\n' "${BGRED}Text on red background${NORMAL}"

См. также

[ редактировать ]
  1. ^ Рюгхаймер, Ханнес; Спаник, Кристиан (12 сентября 1988 г.). Краткий справочник по AmigaDOS . Гранд-Рапидс, Мичиган: Абакус. ISBN  9781557550491 – через Интернет-архив.
  2. ^ «Мультикоманды» . www.multicians.org .
  3. ^ «Руководство пользователя FLEX 9.0» (PDF) .
  4. ^ «Руководство» (PDF) . www.pagetable.com . Проверено 12 сентября 2020 г.
  5. ^ «РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ Z80-RIO» (PDF) .
  6. ^ Пол С. Даян (1992). OS-9 Guru-1: Факты . Галактика Индастриал Лимитед. ISBN  0-9519228-0-7 .
  7. ^ «Жёлуди Криса: Панос» . chrisacorns.computinghistory.org.uk .
  8. ^ «Руководство пользователя FlexOS™» (PDF) . Архивировано из оригинала (PDF) 14 сентября 2018 г.
  9. ^ «Команды пакетного файла OS/2» . Архивировано из оригинала 14 апреля 2019 г.
  10. ^ «эхо» . docs.microsoft.com . 2 октября 2023 г.
  11. ^ «реактос/реактос» . Гитхаб . 3 января 2022 г.
  12. ^ «Справочное руководство по командам MPE/iX» (PDF) . Архивировано из оригинала (PDF) 21 октября 2018 г. Проверено 21 октября 2018 г.
  13. ^ «Shell — KolibriOS wiki» . wiki.kolibrios.org .
  14. ^ «Встроенные функции Bash (Справочное руководство Bash)» . www.gnu.org .
  15. ^ «zsh: 17 встроенных команд оболочки» . zsh.sourceforge.net .
  16. ^ «Оболочки EFI и сценарии» . Интел . Проверено 25 сентября 2013 г.
  17. ^ Макилрой, доктор медицины (1987). Читатель Research Unix: аннотированные выдержки из Руководства программиста, 1971–1986 (PDF) (Технический отчет). CSTR. Лаборатории Белла. 139.
  18. ^ Масчек, Свен. «поведение echo и printf» . Проверено 24 июля 2016 г.
  19. ^ «Справочная страница Unix echo 8-го издания» . Проверено 24 июля 2016 г.
  20. ^ Вулвертон, Ван (2003). Работает MS-DOS версии 6.22 (20-е юбилейное издание), 6-е исправленное издание . Майкрософт Пресс . ISBN  0-7356-1812-7 .
  21. ^ echo: запись аргументов в стандартный вывод – Справочник по командной строке и утилитам, Единая спецификация UNIX , версия 4 от The Open Group
  22. ^ «Документация Autoconf по переносимости эхо» . Фонд свободного программного обеспечения . Проверено 24 июля 2016 г.

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d30406984ca51655363292f28d357f85__1697377620
URL1:https://arc.ask3.ru/arc/aa/d3/85/d30406984ca51655363292f28d357f85.html
Заголовок, (Title) документа по адресу, URL1:
echo (command) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)