![Como corrigir o DM do Instagram que não está funcionando (8 métodos)](/f/27f433e53e46f01f4625867fe7f7cb38.jpg?width=100&height=100)
Ao usar a linha de comando, você pode passar diretamente a saída de um programa (por exemplo, uma ferramenta que gera alguns informações ou estatísticas do sistema) como entrada para outro programa (como filtragem de texto ou pesquisa de padrões ferramentas como grep, sed ou awk, para processamento posterior), usando um pipeline.
Leia também: Aprenda os princípios básicos de como funciona o redirecionamento de E / S (entrada / saída) do Linux
Dois dos utilitários de linha de comando mais importantes que podem ser usados com pipelines para construir linhas de comando são:
xargs
- lê fluxos de dados da entrada padrão e, em seguida, gera e executa linhas de comando.tee
- lê da entrada padrão e grava simultaneamente na saída padrão e em um ou mais arquivos. É mais um comando de redirecionamento.Neste artigo simples, descreveremos como construir e executar vários comandos de entrada padrão usando tubos, tee e xargs comandos no Linux.
A sintaxe mais simples para usar um tubo, que você já deve ter visto em comandos em muitos dos nossos tutoriais do Linux, é o seguinte. Mas você pode construir uma linha de comando mais longa com vários comandos.
$ command1 args | command2 args OR. # command1 args | command2 args | command3 args...
Abaixo está um exemplo de como usar um pipeline para passar a saída de comando dmesg para comando principal.
$ dmesg | cabeça.
Neste exemplo, o segundo comando converte a saída de várias linhas em uma única linha usando xargs.
$ ls -1 * .sh. $ ls -1 * .sh | xargs.
Para contar o número de linhas / palavras / caracteres em cada arquivo em uma lista, use os comandos abaixo.
$ ls * .sh | xargs wc -l #count número de linhas em cada arquivo. $ ls * .sh | xargs wc -w #contar número de palavras em cada arquivo. $ ls * .sh | xargs wc -c #contar número de caracteres em cada arquivo. $ ls * .sh | xargs wc #count linhas, palavras e caracteres em cada arquivo.
O comando abaixo encontra e exclui recursivamente o diretório chamado Tudo
no diretório atual.
$ find. -nome "Tudo"-tipo d -print0 | xargs -0 / bin / rm -rf" {} "
O encontrar comando com opção -print0
ação permite a impressão do caminho completo do diretório na saída padrão, seguido por um caractere nulo e -0 xargs
flag lida com espaço em nomes de arquivos.
Você pode encontrar outras práticas comando xargs exemplos de uso nestes artigos:
Este exemplo mostra como enviar saída de comando para saída padrão e salvar em um arquivo; o comando abaixo permite que você veja principais processos em execução pelo maior uso de memória e CPU no Linux.
$ ps -eo cmd, pid, ppid,% mem,% cpu --sort = -% mem | cabeça | tee topprocs.txt. $ cat topprocs.txt.
Para anexar dados em um (s) arquivo (s) existente (s), passe o -uma
bandeira.
$ ps -eo cmd, pid, ppid,% mem,% cpu --sort = -% mem | cabeça | tee -a topprocs.txt
Você pode encontrar mais informações em tee e xargs páginas do manual.
$ man xargs. $ man tee.
Isso é tudo! Não se esqueça de verificar nosso artigo especial: A - Comandos Z Linux - Visão geral com exemplos.
Neste artigo, descrevemos como gerar linhas de comando usando pipelines; xargs e comandos tee. Você pode fazer perguntas ou compartilhar suas ideias por meio do formulário de feedback abaixo.