Articulo de referencia

eco (comando)

([[AT&T Bell Laboratories]])"},"developer":{"wt":"Various [[open-source software|open-source]] and [[commercial software|commercial]] developers"},"released":{"wt":""},"latest r...

echoes un comando de shell que escribe el texto de entrada en la salida estándar . Está disponible en muchos sistemas operativos y shells . Se usa frecuentemente en un script de shell para registrar el estado, proporcionar información al usuario y para depurar . En una sesión interactiva, la salida se muestra por defecto en la pantalla del terminal , pero se puede redirigir a un archivo o canalizar a otro proceso. [ 1 ]

Muchos intérpretes de comandos implementan esta función echocomo un comando integrado en lugar de una aplicación externa , como ocurre con muchos otros comandos.

Existen múltiples implementaciones incompatibles de echoen diferentes shells. Algunas expanden las secuencias de escape por defecto, y otras no. Algunas aceptan opciones, y otras no. La especificación POSIX [ 2 ] deja el comportamiento sin especificar si el primer argumento es -no cualquier argumento contiene caracteres de barra invertida, mientras que la especificación Unix (opción XSI en POSIX) exige la expansión de algunas secuencias y no permite ningún procesamiento de opciones. En la práctica, muchas echoimplementaciones no son compatibles en el entorno predeterminado. Debido a estas variaciones, echose considera un comando no portable [ 3 ] y se prefiere el printfcomando (introducido en la Novena Edición de Unix).

Implementaciones

El comando está disponible en los siguientes shells o al menos en un shell de un sistema operativo listado:

Historia

echoComenzó dentro de Multics . Después de que Doug McIlroy lo programara en C como un "ejercicio de dedos" y demostrara ser útil, pasó a formar parte de la versión 2 de Unix . En la versión 7 reemplazó a (que se comportaba como pero sin terminar su salida con un delimitador de línea). [ 17 ]echo -npromptecho

En PWB/UNIX y posteriormente en Unix System III , echose comenzaron a expandir las secuencias de escape de C , con \nla notable diferencia de que las secuencias de escape octales se expresaban como \0oooen lugar de \oooen C. [ 18 ]

La octava edición de Unixecho solo realizaba la expansión de escape cuando se le pasaba una -eopción, [ 19 ] y ese comportamiento fue copiado por algunas otras implementaciones, como el echocomando integrado de Bash o zsh y GNU echo.

En MS-DOS , el comando está disponible en las versiones 2 y posteriores. [ 20 ]

Ejemplos

C:\> echo Hola mundo Hola mundo

Mediante secuencias de código de escape SGR de ANSI , los terminales compatibles pueden imprimir texto en color.

Utilizando una implementación al estilo del sistema UNIX III :

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

O una implementación al estilo de Unix versión 8 (como Bash cuando no está en modo de conformidad con Unix):

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

y después:

echo " ${ FGBLUE } Texto en azul ${ NORMAL } " echo "Texto normal" echo " ${ BGRED } Fondo en rojo" echo " ${ BGGREEN } Fondo en verde y de vuelta a Normal ${ NORMAL } "

Portátil con printf:

BGRED = ` printf '\33[41m' ` NORMAL = ` printf '\33[m' ` printf '%s\n' " ${ BGRED } Texto sobre fondo rojo ${ NORMAL } "

Véase también

Referencias

  1. Rügheimer, Hannes; Spanik, Christian (12 de septiembre de 1988). AmigaDOS quick reference . Grand Rapids, MI  : Abacus. ISBN 9781557550491 vía Internet Archive.
  2. : escribir argumentos en la salida estándar Shell and Utilities Reference, The Single UNIX Specification , Versión 5 de The Open Groupecho   
  3. "Documentación de Autoconf sobre la portabilidad de echo" . Free Software Foundation. Archivado del original el 10 de diciembre de 2019. Consultado el 24 de julio de 2016 .
  4. "eco" . docs.microsoft.com . 2 de octubre de 2023. Archivado del original el 11 de septiembre de 2018. Consultado el 8 de abril de 2019 .
  5. "Comandos de Multics" . www.multicians.org . Archivado del original el 16 de agosto de 2000. Consultado el 19 de abril de 2019 .
  6. "Comandos de archivos por lotes de OS/2" . Archivado del original el 14 de abril de 2019.
  7. "Manual del usuario de FLEX 9.0" (PDF) . Archivado (PDF) del original el 25/07/2021 . Consultado el 04/07/2019 .
  8. "Manual" (PDF) . www.pagetable.com . Archivado (PDF) del original el 21/10/2020 . Consultado el 12/09/2020 .
  9. "MANUAL DEL USUARIO DEL SISTEMA OPERATIVO Z80-RIO" (PDF) . Archivado del original (PDF) el 28/01/2022 . Consultado el 04/05/2019 .
  10. Paul S. Dayan (1992). El gurú del OS-9 - 1 : Los hechos . Galactic Industrial Limited. ISBN  0-9519228-0-7.
  11. "Las bellotas de Chris: Panos" . chrisacorns.computinghistory.org.uk . Archivado del original el 31 de marzo de 2016. Consultado el 8 de abril de 2019 .
  12. "Guía del usuario de FlexOS™" (PDF) . Archivado del original (PDF) el 14 de septiembre de 2018.
  13. "reactos/reactos" . GitHub . 3 de enero de 2022. Archivado del original el 11 de diciembre de 2017. Consultado el 9 de junio de 2019 .
  14. "Manual de referencia de comandos MPE/iX" (PDF) . Archivado del original (PDF) el 21/10/2018 . Consultado el 21/10/2018 .
  15. "Shell - KolibriOS wiki" . wiki.kolibrios.org . Archivado del original el 11 de febrero de 2019. Consultado el 24 de septiembre de 2018 .
  16. "EFI Shells and Scripting" . Intel . Archivado del original el 27/09/2013 . Consultado el 25/09/2013 .
  17. McIlroy, MD (1987). Un lector de Research Unix: extractos anotados del Manual del programador, 1971–1986 (PDF) (Informe técnico). CSTR. Bell Labs. 139.
  18. Mascheck, Sven. "Comportamiento de echo y printf" . Archivado del original el 1 de noviembre de 2022. Recuperado el 24 de julio de 2016 .
  19. "Página man de Echo de la 8.ª edición de Unix" . Archivado del original el 14 de noviembre de 2017. Consultado el 24 de julio de 2016 .
  20. Wolverton, Van (2003). Ejecución de MS-DOS versión 6.22 (Edición del 20.º aniversario), 6.ª edición revisada . Microsoft Press . ISBN 0-7356-1812-7.

Lecturas adicionales

  • Wolverton, Van (1990). Comandos de MS-DOS: Guía de referencia rápida de Microsoft, 4.ª edición revisada . Microsoft Press . ISBN 978-1556152894.
  • Kathy Ivens; Brian Proffit (1993). OS/2 Inside & Out . Osborne McGraw-Hill . ISBN 978-0078818714.
  • Frisch, Æleen (2001). Windows 2000 Commands Pocket Reference . O'Reilly . ISBN 978-0-596-00148-3.