Também é possível pensar nisso como um vínculo temporário, mas direto, entre dois ou mais processos, comandos ou programas. Os filtros são aqueles programas de linha de comando que executam o processamento adicional.
Essa conexão direta entre processos ou comandos permite que eles executem e passem os dados entre eles simultaneamente sem enfrentar o problema de verificar a tela da tela ou os arquivos de texto temporários. Na tubulação, o fluxo dos dados é da esquerda para a direita, que declara os tubos é unidirecional. Agora, vamos conferir alguns exemplos práticos de usar tubos no Linux.
Exibindo a lista de arquivos e diretórios:
No primeiro exemplo, ilustramos como você pode usar o comando Pipe para passar a lista de diretórios e arquivo como uma "entrada" para mais comandos.
$ ls -l | mais
Aqui, a saída de "LS" é considerada como entrada pelo comando "mais". De cada vez, a saída do comando LS é mostrada na tela como resultado desta instrução. O tubo fornece a capacidade do contêiner para receber a saída do comando LS e passá -lo para mais comandos como entrada.
Como a memória principal executa a implementação do tubo, este comando não utiliza o disco para criar um link entre a saída padrão LS -L e a entrada padrão de mais comando. O comando acima é análogo à seguinte série de comando em termos de operadores de redirecionamento de entrada/saída.
$ ls -l> temp
$ mais < temp
Confira o conteúdo do arquivo "Temp" manualmente.
$ rm temp
Classifique e imprimindo valores únicos usando tubos:
Agora, veremos um exemplo de uso de tubos para classificar um conteúdo de arquivo e imprimir seus valores exclusivos. Para esse fim, combinaremos os comandos "classificar" e "uniq" com um tubo. Mas primeiro selecione qualquer arquivo que contenha dados numéricos, no nosso caso, temos o “registro.arquivo txt ”.
Escreva o comando abaixo para que, antes do processamento do pipeline, você tenha uma idéia clara sobre os dados do arquivo.
$ CAT Record.TXT
Agora, a execução do comando abaixo classificada classificará os dados do arquivo, ao mesmo tempo em que exibirá os valores exclusivos no terminal.
$ REGISTRO DE CORLECIMENTO.txt | Uniq
Uso do tubo com comandos de cabeça e cauda
Você também pode usar comandos "Head" e "Tail" para imprimir linhas de um arquivo em um intervalo específico.
$ CAT Samplefile | Cabeça -7 | cauda -5
O processo de execução deste comando selecionará as sete primeiras linhas de "SampleFile" como uma entrada e passará para o comando da cauda. O comando da cauda recuperará as últimas 5 linhas do “Samplefile” e as imprimirá no terminal. O fluxo entre a execução do comando é tudo por causa dos tubos.
Combinando um padrão específico em arquivos correspondentes usando tubos
Os tubos podem ser usados para encontrar arquivos com uma extensão específica na lista extraída do comando ls.
$ ls -l | encontrar ./ -Type f -name "*.TXT"
Comando Pipe em combinação com "Grep", "Tee" e "WC"
Este comando selecionará o "Alex" de "Record.arquivo txt ”, e no terminal, ele imprimirá o número total de ocorrências do padrão“ Alex ”. Aqui, os comandos de "gato", "grep", "tee" e "wc".
$ CAT Record.txt | Grep "Alex" | Tee File1.txt | wc -l
$ CAT FILE1.TXT
Conclusão:
Um tubo é um comando utilizado pela maioria dos usuários do Linux para redirecionar a saída de um comando para qualquer arquivo. O personagem do tubo '|' pode ser usado para realizar uma conexão direta entre a saída de um comando como uma entrada do outro. Neste post, vimos vários métodos de tubulação da saída de um comando para o terminal e os arquivos.