echo (comando) - echo (command)
Autor (es) original (is) |
Douglas McIlroy ( AT&T Bell Laboratories ) |
---|---|
Desenvolvedor (s) | Vários open-source e comerciais desenvolvedores |
Sistema operacional | 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 , KolibriOS , SymbOS |
Plataforma | Plataforma cruzada |
Modelo | Comando |
Na computação , echo
é um comando que produz as strings que são passadas para ele como argumentos . É um comando disponível em vários shells de sistema operacional e normalmente usado em scripts de shell e arquivos em lote para enviar texto de status para a tela ou um arquivo de computador , ou como uma parte de origem de um pipeline .
Implementações
O comando está disponível nos seguintes sistemas operacionais:
- Multics
- TSC FLEX
- MetaComCo TRIPOS
- Zilog Z80-RIO
- Microware OS-9
- DOS
- Acorn Computers Panos
- Digital Research FlexOS
- IBM OS / 2
- Microsoft Windows
- ReactOS
- HP MPE / iX
- KolibriOS
- SymbOS
- Unix e sistemas operacionais semelhantes ao Unix
Muitos shells, incluindo todos os shells semelhantes a Bourne (como Bash ou zsh ) e Csh , bem como COMMAND.COM e cmd.exe, são implementados echo
como um comando interno .
O comando também está disponível no shell EFI .
História
echo
começou no Multics . Depois de ter sido programado em C por Doug McIlroy como um "exercício de dedo" e provado ser útil, ele se tornou parte da Versão 2 do Unix . echo -n
na Versão 7 substituído prompt
, (que se comportou como, echo
mas sem encerrar sua saída com um delimitador de linha).
No PWB / UNIX e posteriormente no Unix System III , echo
começou a expandir as sequências de escape C , como \n
com a notável diferença de que as sequências de escape octal eram expressas como em \0ooo
vez de \ooo
C.
Oitava Edição Unix echo
só fez a expansão de escape quando passou uma -e
opção, e esse comportamento foi copiado por algumas outras implementações, como o echo
comando embutido de Bash ou zsh e GNU echo
.
No MS-DOS , o comando está disponível nas versões 2 e posteriores.
Hoje em dia, echo
existem várias implementações incompatíveis de em diferentes sistemas operacionais (muitas vezes vários no mesmo sistema), alguns deles expandindo sequências de escape por padrão, alguns deles não, alguns deles aceitando opções (a lista varia com as implementações), alguns deles não.
A especificação POSIX de echo
deixa o comportamento não especificado se o primeiro argumento for -n
ou qualquer argumento contiver caracteres de barra invertida, enquanto a especificação Unix (opção XSI em POSIX) exige a expansão de (algumas) sequências e não permite o processamento de qualquer opção. Na prática, muitas echo
implementações não são compatíveis com o ambiente padrão.
Por causa dessas variações de comportamento, echo
é considerado um comando não portátil em sistemas semelhantes ao Unix e o printf
comando (quando disponível, introduzido pela Nona Edição Unix) é o preferido.
Exemplos de uso
C:\>echo Hello world
Hello world
Usando sequências SGR de código de escape ANSI , terminais compatíveis podem imprimir texto colorido.
Usando uma implementação do estilo UNIX System III :
BGRED=`echo "\033[41m"`
FGBLUE=`echo "\033[35m"`
BGGREEN=`echo "\033[42m"`
NORMAL=`echo "\033[m"`
Ou uma implementação de estilo Unix Versão 8 (como Bash quando não está no modo de conformidade com Unix):
BGRED=`echo -e "\033[41m"`
FGBLUE=`echo -e "\033[35m"`
BGGREEN=`echo -e "\033[42m"`
NORMAL=`echo -e "\033[m"`
e depois:
echo "${FGBLUE} Text in blue ${NORMAL}"
echo "Text normal"
echo "${BGRED} Background in red"
echo "${BGGREEN} Background in Green and back to Normal ${NORMAL}"
Portável com printf
:
BGRED=`printf '\33[41m'`
NORMAL=`printf '\33[m'`
printf '%s\n' "${BGRED}Text on red background${NORMAL}"
Veja também
Referências
Leitura adicional
- Wolverton, Van (1990). Comandos do MS-DOS: Referência rápida da Microsoft, 4ª edição revisada . Microsoft Press . ISBN 978-1556152894.
- Kathy Ivens; Brian Proffit (1993). OS / 2 por dentro e por fora . Osborne McGraw-Hill . ISBN 978-0078818714.
- Frisch, Æleen (2001). Referência de bolso de comandos do Windows 2000 . O'Reilly . ISBN 978-0-596-00148-3.
links externos
- The Single UNIX Specification , Issue 7 from The Open Group : escreva argumentos para a saída padrão - Referência de comandos e utilitários,
- Plano 9 , Volume 1 - Manual do programador do
- Manual de comandos gerais do Inferno -
- Artigo do Microsoft TechNet Echo