Unixで作業するのは初めてで、次の順序で実行するスクリプトを作成したいと思います。
- デフォルトの.tsvファイルをインポートしてXファイルに分割します。各ファイルにはY行が含まれています。
- プログラムで各分割ファイルを実行し、完了すると新しい.tsvファイルを出力します。
- すべての分割ファイルの処理が完了するのを待ってから、出力ファイルを1つにリンクします。
split
私はandを使ってファイルを分割する方法を知っていますsed
が、パーティションファイルをPythonスクリプトで実行するのも難しいとは思いませんが、問題は並列プログラムのすべての実行がいつ完了したかを確認してからステッチすることです。それらの出力を1つにします。
私が知る限り、split
名前は自動的に増加し、それを大規模に並列化できます。このSOの質問に見られるようにだから、その部分を見つけることができます。並列Pythonスクリプトセットの実行状態を確認する方法はありますか?私がしたいことをどのように達成できますか?
ベストアンサー1
split -l $Y main.tsv main_part_
for part in main_part_*; do
program $part &
done
wait
echo "all done"
wait
bash 組み込み機能です。詳しくはマニュアルページをご覧ください。