Entrada padrão
A entrada padrão ou stdin é o comando que digitamos em nosso terminal para interagir com o kernel Linux.
Ubuntu@ubuntu: ~ $ ls -la
No exemplo acima, “LS -LA” é a entrada padrão ou stdin.
Saída padrão
A saída padrão ou stdout é a saída de um processo em execução ou comando dado ao kernel Linux por meio de entrada padrão e é exibido no terminal. Por exemplo, dado acima, a saída é como
Ubuntu@ubuntu: ~ $ ls -la
… Snip…
-rwxr-x --- 1 Ubuntu Ubuntu 89 4 de janeiro de 2021 arith.sh
-RW-R-R-- 1 Ubuntu Ubuntu 3771 Jun 3 2020 .Bashrc
DRWX ------ 28 Ubuntu Ubuntu 4096 1 de agosto 13:10 .cache
drwxr-xr-x 36 Ubuntu Ubuntu 4096 29 de julho 18:30 .Config
DRWX ------ 3 Ubuntu Ubuntu 4096 de novembro de 1820 .dbus
drwxr-xr-x 5 ubuntu ubuntu 4096 de julho 30 16:28 Desktop
drwxr-xr-x 13 Ubuntu Ubuntu 12288 28 de julho 19:53 Downloads
… Snip…
Cada saída possui um local padrão predefinido para ir nos sistemas operacionais baseados em UNIX. Alguns dos métodos para redirecionar a saída são apresentados abaixo.
Redirecionamento de saída padrão “>“
O redirecionamento de saída é um método no qual a saída padrão de um comando pode ser redirecionada para arquivos ou como entrada padrão para outro comando. O sinal ">" é usado para redirecionamento de saída. O terminal não mostra a saída; Em vez disso, é escrito para um arquivo ou redirecionado como entrada para outro comando. Por exemplo
Ubuntu@ubuntu: ~ $ echo hello world> arquivo.TXT
OU
Ubuntu@ubuntu: ~ $ sudo apt-cache pkgnames> pitkegnames
Em vez da saída mostrada no terminal, ele será redirecionado para o arquivo.arquivo txt ou pakegsnames. Para confirmar se a saída foi redirecionada ou não, use o gato comando para ler os arquivos.
Ubuntu@ubuntu: ~ arquivo de gato.TXT
Ubuntu@ubuntu: ~ $ cat pakegname
Este operador "1>" também é usado para redirecionar a saída padrão.
Redirecionamento de entrada padrão “ < ”
O redirecionamento de entrada é um método no qual a entrada padrão de um comando é redirecionada de um arquivo ou uma saída padrão de outro comando. O "<” sign is used for input redirection. It is mostly the default action of a command. For example
Ubuntu@ubuntu: ~ $ menos < /etc/passwd
É o mesmo que este.
Ubuntu@ubuntu: ~ $ menos /etc /passwd
É preciso entrada do arquivo /etc/passwd em vez de um teclado. O “0<” sign can also be used for redirecting standard input.
Redirecionamento de erro padrão “2>“
Com o método de redirecionamento, os erros padrão podem ser redirecionados e gravados para um arquivo. Por exemplo
Ubuntu@ubuntu: ~ $ sudo apt-get update 2> erro
Se ocorrer algum erro, ele não será exibido na janela do terminal; Em vez disso, será armazenado em um arquivo de erro. Se o arquivo de erro já existir, será substituído.
Saída padrão e redirecionamento de erro padrão “&>“
Com o sinal "&>", há uma maneira mais eficiente de redirecionar a saída padrão e o erro padrão simultaneamente com o sinal "&>". Por exemplo
Ubuntu@ubuntu: ~ $ sudo apt-cache pkgnames &> pkgnames
Todos os nomes e erros dos pacotes serão armazenados no arquivo pkgnames.
Redirecionamento de saída padrão “>>”
Este método de redirecionamento redireciona a saída padrão de um comando ou um arquivo para outro arquivo. A diferença é que, ao usar o redirecionamento ">>", se o arquivo já existir, os dados serão anexados ao arquivo; Portanto, o arquivo não será substituído.
Ubuntu@ubuntu: ~ $ sudo apt-cache pkgnames >> pkgnames
Se os pkgnames de arquivo já existirem, seu conteúdo não será substituído; Em vez disso, a saída será adicionada no final do arquivo.
Redirecionamento de entrada padrão “ << ”
Este método de redirecionamento lê a entrada do usuário do terminal e depois o anexa ao arquivo.
Ubuntu@ubuntu: ~ $ cat pkgnames << pkgnames
> Ubuntu
> Chrome
> pkgnames
Se o arquivo PKGNOMES já existir, seu conteúdo não será substituído.
Redirecionamento usando tubos “| ““
Os tubos são frequentemente usados quando você deseja combinar vários comandos. Com os tubos, a saída do primeiro comando pode ser usada como entrada do segundo comando. Por exemplo
Ubuntu@ubuntu: ~ sudo pkgnames apt cache | menos
No comando acima, a saída padrão do comando deixada para o tubo “|” O sinal é a entrada padrão do comando direito para o tubo “|” sinal.
Combinando os operadores de redirecionamento
Você pode combinar alguns dos operadores de redirecionamento, porque eles são convenientemente fáceis de usar e demorar menos tempo; Alguns dos operadores de redirecionamento combinados são dados abaixo.
2 >>: | Este operador é usado para redirecionar erros padrão para o arquivo. |
: | Este operador é usado para arquivos especificados como entrada padrão e saída padrão. |
> &: | Este operador redireciona a saída de um arquivo para outro. |
<&: | Este operador redireciona a entrada de um arquivo para outro. |
2> & 1: | Este operador é usado para redirecionar o erro padrão para saída padrão. |
1> & 2: | Este operador é usado para redirecionar a saída padrão para erro padrão. |
Conclusão
Como administrador do Linux, o redirecionamento de entrada e saída é uma rotina muito comum no trabalho diário. Armazenar a saída e erros para uso posterior e combinar os vários comandos facilitam seu trabalho e reduz o tempo para que você possa trabalhar diligentemente e eficientemente. Acima estão algumas dicas para fazer o que o ajudará a entender redirecionamentos de insumo output.