AWK または BASH スクリプトを使用して開始日と終了日を指定して日付のシーケンスを生成するにはどうすればよいでしょうか? 質問する

AWK または BASH スクリプトを使用して開始日と終了日を指定して日付のシーケンスを生成するにはどうすればよいでしょうか? 質問する

次の形式のデータセットがあります

最初のフィールドと 2 番目のフィールドは、調査の開始日と終了日 (M/D/YYYY) を示します。

AWK または BASH スクリプトを使用して、うるう年を考慮しながらデータを目的の出力形式に拡張するにはどうすればよいでしょうか?

あなたの助けにとても感謝しています。

入力

  7/2/2009   7/7/2009
  2/28/1996  3/3/1996
  12/30/2001 1/4/2002

望ましい出力

  7/7/2009
  7/6/2009
  7/5/2009
  7/4/2009
  7/3/2009
  7/2/2009
  3/3/1996
  3/2/1996
  3/1/1996
  2/29/1996
  2/28/1996
  1/4/2002
  1/3/2002
  1/2/2002
  1/1/2002
  12/31/2001
  12/30/2001

ベストアンサー1

bash だけでもうまく実行できます:

for i in `seq 1 5`;
do
  date -d "2017-12-01 $i days" +%Y-%m-%d;
done;

またはパイプの場合:

seq 1 5 | xargs -I {} date -d "2017-12-01 {} days" +%Y-%m-%d

おすすめ記事