最初のジョブが完了したら、読み込み中に別のジョブを実行してください。

最初のジョブが完了したら、読み込み中に別のジョブを実行してください。

while read最初のタスクが完了したら、別の入力ファイル+ Pythonスクリプトを使用して別のタスクを実行したいと思います。サンプルコード:

#!/bin/bash
while read -r line;
do
    python3 script.py -d $line --output test
done < domain.txt && 
mv *.txt savehere && 
dos2unix savehere/* && 
sort savehere/*.txt | uniq > done.txt

私はこれができることを知っています:

#!/bin/bash
while read -r line;
do
    python3 script.py -d $line --output test && 
    python3 script1337.py -d $line
done < domain.txt && 
mv *.txt savehere && 
dos2unix savehere/* && 
sort savehere/*.txt | uniq > done.txt

しかし、それは私が望むものではありません。別の入力ファイルを使用する必要があり、タスクが完了script1337.pyしたら実行したいと思います(1つの引数を受け入れるので動作しません)。script.pydomain.txt&&

ベストアンサー1

無料の方法もありますwhile

xargs -L 1 -I '{}' python3 script.py -d \"'{}'\" --output test < domain.txt &&
xargs -L 1 -I '{}' python3 script1337.py -d \"'{}'\"           < scriptfile.txt &&
mv *.txt savehere && 
dos2unix savehere/* && 
sort savehere/*.txt | uniq > done.txt

オリジナル少ないxargsしかし、外部ユーティリティを呼び出すので効率的です。

おすすめ記事