Redirecionamentos, Pipes e Fluxos

Redirecionamentos, Pipes e Fluxos utilizados no cotidiano de forma prática. Artigo realizado com o intuito de aproximar os usuários mais novatos com o terminal e agilizar seu entendimento e uso com o mesmo.

[ Hits: 6.888 ]

Por: Jefferson em 22/10/2018


Redirecionadores de Entrada



Essa situação é utilizada quando você deseja informar ao comando de que a entrada do mesmo é um arquivo ou também para indicar fim de um comando a partir de uma sintaxe. Nos exemplos abaixo será mais fácil distingui-los.

No caso da utilização do operador menor (<), o mesmo é utilizado para indicar ao comando que a entrada padrão, STDIN(0), será um arquivo ou comando ao invés do teclado, conforme abordado na página anterior.

Exemplo:

tr 'a-z' 'a-z' < entrada.txt

Neste caso, o comando tr será alimentado pelo STDIN (0) entrada.txt; transformando letras minúsculas em maiúsculas.
Outro clássico exemplo é a utilização do comando mail com STDIN a partir de arquivo.

Normalmente utilizamos o mail -S "Assunto" usuário a ser enviado; enter.

A saída (STDOUT) do comando será uma caixa box, pedindo para que insira (STDIN) o conteúdo.

Porém, podemos fazer com que o STDIN seja inserido a partir de um arquivo:

mail -s "Assunto do E-mail" jmartins < entrada.txt

No caso do operador <<, o mesmo é utilizado quando se deseja inserir um conteúdo interativamente, até que informe seu fim. Por exemplo:
tr 'a-z' 'A-Z' << PAREI
> teste
> testando
> o
> tr
> PAREI
(ao digitar PAREI, ele entende como fim do comando e realiza o STDOUT do comando, conforme podem observar na imagem).

TESTE
TESTANDO
O
TR


Veja que a string "PAREI" (pode ser qualquer valor) informará ao shell que a entrada STDIN encerra nesse ponto e então ele irá enviar essa entrada ao comando tr.

Há também outro redirecionador, pouco notado, porém devemos saber que existe. Este é o <<<, apelidado de "here string". Ele adota o redirecionamento que o segue, como se fosse o conteúdo de um arquivo texto. Por exemplo:
tr 'a-z' 'A-Z' < entrada2.txt
bash: entrada2.txt: Arquivo ou diretório não encontrado

tr 'a-z' 'A-Z' <<< entrada2.txt
ENTRADA2.TXT

Página anterior     Próxima página

Páginas do artigo
   1. Redirecionadores de Saída - STDIN, STDOUT e STDERR
   2. Redirecionadores de Entrada
   3. Pipes e Fluxos
Outros artigos deste autor

Instalação da Plataforma Hadoop

Leitura recomendada

Monitorar servidores e enviar alertas por e-mail e SMS

Utilizando "expr" para "String Matching" através de expressões regulares em shell

Expressões regulares no Bash : parte I

Definição automática de wallpaper em função do horário

Recebendo seu IP dinâmico via email

  
Comentários
[1] Comentário enviado por eduardo em 23/10/2018 - 11:13h

Ótimo artigo Jefferson, parabéns!

[2] Comentário enviado por jeffersonmartins em 23/10/2018 - 18:41h


[1] Comentário enviado por eduardo em 23/10/2018 - 11:13h

Ótimo artigo Jefferson, parabéns!


Muito Obrigado Eduardo!!

[3] Comentário enviado por amaurybsouza em 25/10/2018 - 08:39h

Muito bom o seu artigo, estou revendo o que eu aprendi sobre redirecionamentos para a prova LPI-1.

[4] Comentário enviado por Levi linux em 02/11/2018 - 22:29h

Parabéns! Muito útil.

[5] Comentário enviado por jeffersonmartins em 02/11/2018 - 23:41h


[3] Comentário enviado por absouza em 25/10/2018 - 08:39h

Muito bom o seu artigo, estou revendo o que eu aprendi sobre redirecionamentos para a prova LPI-1.


Obrigado! O intuito que criei é justamente para aprendizado; estou em processo de estudos para a LPI também rs. Bora lá!

[6] Comentário enviado por jeffersonmartins em 02/11/2018 - 23:41h


[4] Comentário enviado por Levi linux em 02/11/2018 - 22:29h

Parabéns! Muito útil.


Muito obrigado Levi!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts