Perguntas com a marcação «xargs»

341
Faça xargs executar o comando uma vez para cada linha de entrada

Como posso fazer xargs executar o comando exatamente uma vez para cada linha de entrada fornecida? Seu comportamento padrão é dividir as linhas e executar o comando uma vez, passando várias linhas para cada instância. De http://en.wikipedia.org/wiki/Xargs : encontrar / caminho-tipo f -print0...

310
Executando vários comandos com xargs

cat a.txt | xargs -I % echo % No exemplo acima, xargs assume echo %como argumento de comando. Mas, em alguns casos, preciso de vários comandos para processar o argumento em vez de um. Por exemplo: cat a.txt | xargs -I % {command1; command2; ... } Mas xargs não aceita este formulário. Uma solução...

252
Faça xargs manipular nomes de arquivos que contêm espaços

$ ls *mp3 | xargs mplayer Playing Lemon. File not found: 'Lemon' Playing Tree.mp3. File not found: 'Tree.mp3' Exiting... (End of file) Meu comando falha porque o arquivo "Lemon Tree.mp3" contém espaços e, portanto, o xargs pensa que são dois arquivos. Posso fazer o find + xargs funcionar...

188
Como ignorar comandos xargs se a entrada stdin está vazia?

Considere este comando: ls /mydir/*.txt | xargs chown root A intenção é alterar os proprietários de todos os arquivos de texto mydirpara root O problema é que, se não houver .txtarquivos mydir, o xargs lança um erro dizendo que não há um caminho especificado. Este é um exemplo inofensivo porque...

168
Chamando funções de shell com xargs

Estou tentando usar xargs para chamar uma função mais complexa em paralelo. #!/bin/bash echo_var(){ echo $1 return 0 } seq -f "n%04g" 1 100 |xargs -n 1 -P 10 -i echo_var {} exit 0 Isso retorna o erro xargs: echo_var: No such file or directory Quaisquer idéias sobre como eu posso usar o...

160
Como usar> em um comando xargs?

Eu quero encontrar um comando bash que me permita grep todos os arquivos em um diretório e escreva a saída desse grep em um arquivo separado. Meu palpite teria sido fazer algo assim ls -1 | xargs -I{} "grep ABC '{}' > '{}'.out" mas, tanto quanto eu sei, xargs não gosta de aspas duplas. Se eu...

86
Executando programas em paralelo usando xargs

Atualmente tenho o script atual. #!/bin/bash # script.sh for i in {0..99}; do script-to-run.sh input/ output/ $i done Desejo executá-lo em paralelo usando xargs. eu tentei script.sh | xargs -P8 Mas fazer o que precede só é executado uma vez de cada vez. Sem sorte com -n8 também....