Автор (ы) оригинала | Дуглас Макилрой ( AT&T Bell Laboratories ) |
---|---|
Разработчики) | Различные разработчики с открытым исходным кодом и коммерческие разработчики |
Операционная система | Multics , Unix , Unix-like , V , Plan 9 , Inferno , FLEX , TRIPOS , Z80-RIO , OS-9 , DOS , MSX-DOS , Panos , FlexOS , SISNE plus , OS / 2 , Windows , ReactOS , MPE / iX , KolibriOS , SymbOS |
Платформа | Кроссплатформенность |
Тип | Командование |
В вычислении , echo
это команда , которая выводит строки она передается в качестве аргументов . Это команда, доступная в различных оболочках операционной системы и обычно используемая в сценариях оболочки и пакетных файлах для вывода текста состояния на экран [1] или в компьютерный файл , или в качестве исходной части конвейера .
Реализации [ править ]
Команда доступна в Multics , [2] TSC FLEX , [3] MetaComCo TRIPOS , [4] Zilog Z80-RIO , [5] Microware OS-9 , [6] DOS , Acorn Computers Panos , [7] Digital Research FlexOS , [8] IBM OS / 2 , [9] Microsoft Windows , [10] ReactOS , [11] HP MPE / iX , [12] KolibriOS , [13] SymbOS, Unix и Unix-подобные операционные системы.
Многие оболочки, включая все оболочки, подобные Bourne (такие как Bash [14] или zsh [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
начал расширять C управляющие последовательности , такие , как \n
с заметным отличием , что восьмеричные управляющие последовательности были выражены как \0ooo
вместо того , чтобы \ooo
в C. [18]
Восьмое издание Unix echo
выполняло escape-расширение только при передаче -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команду (если она доступна, введена в Ninth Edition Unix).
Примеры использования [ править ]
C: \> echo Привет, мир, привет, мир
Используя escape-коды ANSI SGR , совместимые терминалы могут распечатывать цветной текст.
Использование реализации в стиле UNIX System III :
BGRED = ` echo " \ 033 [41m " ` FGBLUE = ` echo " \ 033 [35m " ` BGGREEN = ` echo " \ 033 [42m " `НОРМАЛЬНЫЙ = ` эхо " \ 033 [м " `
Или реализация в стиле Unix версии 8 (например, Bash, когда он не находится в режиме соответствия Unix):
BGRED = ` echo -e " \ 033 [41m " ` FGBLUE = ` echo -e " \ 033 [35m " ` BGGREEN = ` echo -e " \ 033 [42m " `НОРМАЛЬНЫЙ = ` echo -e " \ 033 [м " `
и после:
echo " $ { FGBLUE } Текст синим цветом $ { NORMAL } " echo "Обычный текст" echo " $ { BGRED } Фон красным цветом" echo " $ { BGGREEN } Фон зеленым и обратно к нормальному $ { NORMAL } "
Портативно с printf
:
BGRED = ` Printf '\ 33 [41m' ` НОРМАЛЬНЫЙ = ` Printf '\ 33 [м' ` Printf '% s \ п' " $ { BGRED } Текст на красном фоне $ { NORMAL } "
См. Также [ править ]
- Список команд Unix
- Список команд DOS
Ссылки [ править ]
- ^ Рюгхаймер, Ханнес; Спаник, Кристиан (12 сентября 1988 г.). «Краткий справочник по AmigaDOS» . Гранд-Рапидс, Mi: Abacus - через Интернет-архив.
- ^ "Команды Multics" . www.multician.org .
- ^ "Руководство пользователя FLEX 9.0" (PDF) .
- ^ "Руководство" (PDF) . www.pagetable.com . Проверено 12 сентября 2020 .
- ^ РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ ОПЕРАЦИОННОЙ СИСТЕМЫ Z80-RIO
- ^ Пол С. Даян (1992). Гуру OS-9 - 1: Факты . Галактик Индастриал Лимитед. ISBN 0-9519228-0-7.
- ^ "Желуди Криса: Панос" . chrisacorns.computinghistory.org.uk .
- ^ [1] [ неработающая ссылка ]
- ^ [2] [ мертвая ссылка ]
- ^ "эхо" . docs.microsoft.com .
- ^ "reactos / reactos" . GitHub .
- ^ Справочное руководство по командам MPE / iX
- ^ "Оболочка - KolibriOS wiki" . wiki.kolibrios.org .
- ^ «Встроенные средства Bash (Справочное руководство по Bash)» . www.gnu.org .
- ^ "zsh: 17 встроенных команд оболочки" . zsh.sourceforge.net .
- ^ «Оболочки EFI и сценарии» . Intel . Проверено 25 сентября 2013 .
- Перейти ↑ McIlroy, MD (1987). Читатель Research Unix: аннотированные выдержки из Руководства программиста, 1971–1986 (PDF) (технический отчет). CSTR. Bell Labs. 139.
- ^ Mascheck, Свен. "поведение echo и printf" . Проверено 24 июля +2016 .
- ^ "8-е издание Unix echo man page" . Проверено 24 июля +2016 .
- ^ Wolverton, Ван (2003). Запуск MS-DOS версии 6.22 (20-летняя редакция), 6-я пересмотренная редакция . Microsoft Press . ISBN 0-7356-1812-7.
- ^ : записать аргументы в стандартный вывод - Справочник по командам и служебным программам, Спецификация Single UNIX , Выпуск 7 от The Open Group
- ^ "Документация Autoconf по переносимости эха" . Фонд свободного программного обеспечения . Проверено 24 июля +2016 .
Дальнейшее чтение [ править ]
- Волвертон, Ван (1990). Команды MS-DOS: Краткий справочник Microsoft, 4-е исправленное издание . Microsoft Press . ISBN 978-1556152894.
- Кэти Ивенс; Брайан Проффит (1993). OS / 2 Inside & Out . Осборн МакГроу-Хилл . ISBN 978-0078818714.
- Фриш, Элин (2001). Карманный справочник команд Windows 2000 . О'Рейли . ISBN 978-0-596-00148-3.
Внешние ссылки [ править ]
В Викиучебнике есть книга на тему: Руководство по командам Windows. |
В Wikibook Guide to Unix есть страница по темам: Команды |
- : записывать аргументы в стандартный вывод - Справочник по командам и служебным программам, Единая спецификация UNIX , выпуск 7 от The Open Group
- - Руководство программиста Plan 9 , том 1
- - Руководство по общим командам Inferno
- Статья Microsoft TechNet Echo