O comando xargs
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 20 de Agosto de 1997
Os resultados obtidos pelo comando find
podem ser redirecionados para
o comando xargs
para que sejam tomadas ações específicas (remoção,
mudança de atributos, listagem, etc) sobre estes arquivos.
O comando xargs
atua sobre o resultado a ele fornecido pela entrada padrão
(standard input) e constrói um comando baseado nesta entrada e em seus
próprios argumentos da linha de comando.
Por exemplo:
% ls | xargs rm -f
Este comando removerá todos os arquivos do diretório corrente. A diferença entre o comando acima e os comandos
% rm -f `ls`
e
% rm -f *
é que após a shell realizar a expansão dos nomes gerados através do comando
rm -f *
ou do comando rm -f `ls`
o tamanho da linha de comandos pode
causar um erro. O comando xargs
gera linhas de comando de tamanho compatível
com as limitações do sistema e executa o comando solicitado tantas vezes
quantas forem necessárias para completar a tarefa.