Como usar o script de thread único para processar em lote?

2

Eu tenho um script python de thread único que é usado assim:

  

python -c "arg"

Eu também tenho um arquivo * .txt com muitos arg , cada um em uma única linha no respectivo * .txt. Um arquivo de texto, digamos 1.txt , tem a seguinte aparência:

arg1
arg2
arg3
arg4

Agora, quero executar o script python com todos esses argumentos, um por um, pois o script não permite mais de um argumento.

Como posso processar esses argumentos no modo batch usando a linha de comando?

    
por mcbetz 10.01.2013 / 13:56

2 respostas

1

Um caminho:

for i in *.txt
do
   while read line
   do
     python -c "$line"
   done < $i
done
    
por Guru 10.01.2013 / 14:00
1

Uma solução muito fácil,

cat 1.txt | xargs -I{} python -c "{}"

Explicação: cat imprime todas as linhas e xargs certifica-se de que cada linha é usada como argumento.

Edit: o -I{} significa que {} deve ser substituído pelo argumento.

    
por Gerhard Burger 10.01.2013 / 15:09