Usando o pipe
Dica publicada em Linux / Introdução
Usando o pipe
Como iniciante no Linux pude perceber a relevância
do pipe para tornar os comandos do shell mais práticos
e mais fáceis de serem escritos e portando decidi compartilhar
minha experiência sobre este comando.
O pipe é um das maneiras que o Linux pode utilizar para comunicação entre processos. De uma maneira simplória poderíamos dizer que o pipe nada mais é do que o encadeamento de processos. Ao primeiro olhar o pipe pode até não chamar atenção dos principiantes, mas trata-se de um ferramenta muito poderosa. Esse encadeamento de processo pode ser ativado pelo usuário através do comando "|". Agora vamos demonstrar no exemplo abaixo a potencialidade dessa ferramenta:
$ ls | grep b | sort -r | tee arquivo.out | wc -l
Espero que esse exemplo tenha sido bastante ilustrativo e ajude os iniciantes no Linux a perceberem a importância do pipe na comunicação de processos.
O pipe é um das maneiras que o Linux pode utilizar para comunicação entre processos. De uma maneira simplória poderíamos dizer que o pipe nada mais é do que o encadeamento de processos. Ao primeiro olhar o pipe pode até não chamar atenção dos principiantes, mas trata-se de um ferramenta muito poderosa. Esse encadeamento de processo pode ser ativado pelo usuário através do comando "|". Agora vamos demonstrar no exemplo abaixo a potencialidade dessa ferramenta:
$ ls | grep b | sort -r | tee arquivo.out | wc -l
- O comando "ls", como bem sabemos, lista o conteúdo do diretório, porém devido ao pipe ele não envia o resultado para tela e sim ao comando "grep b".
- O comando "grep b" por sua vez filtra os nomes de arquivos que contém a letra "b". Devido ao segundo pipe a saída do comando "grep b" é enviada para "sort -r", que classifica os nomes em ordem crescente.
- A saída do "sort -r " é então passada pra o comando "tee", que divide os dados em dois, como se fosse uma conexão em t, fazendo com que as informações processadas pelo comando "sort -r" sejam escritas no arquivo "arquivo.out".
- Então o comando "wc -l" conta as linhas do arquivo "arquivo.out". Assim obtemos como resultado a quantidade de arquivos que contém a letra "b" impresso na tela e o nome desses arquivos em "arquivo.out".
Espero que esse exemplo tenha sido bastante ilustrativo e ajude os iniciantes no Linux a perceberem a importância do pipe na comunicação de processos.