2

GNU 並列を使用して、次のような一連のコマンドを実行したいと考えています。

python MyScript.py 20131101 20131130
python MyScript.py 20131201 20131231
python MyScript.py 20140101 20140131
(etc)

したがって、この質問 ( if else または switch または while ループを使用せずに bash を使用して、現在の年の各月の最終日を取得する方法は? ) は、bash を使用して各月の最終日を取得する方法を示しています。

複数の引数を並行して渡す方法については、シェルスクリプトを繰り返し実行して開始/終了日を生成することになると思いますが、明確ではありません。

コマンドラインからこれを簡単に行う方法はありますか、それとも最初にすべての日付を生成し、並行して読み取るためにファイルに入れる必要がありますか、それともより良い方法がありますか?

4

1 に答える 1

4

このようなもの:

myfunc() {
     MyScript.py $1 $(date -d "$1 + 1 month - 1 day" "+%Y%m%d")
}
export -f myfunc
parallel myfunc ::: 2013{01..12}01
于 2014-03-05T16:36:04.150 に答える