パラメーターに指定された日付に基づいて、翌日のファイルを見つける必要があります。
たとえば、次のようなファイルがあります。
XYZ.ABC.M.20200615180200.batch
XYZ.ABC.M.20200616180200.batch
XYZ.ABC.M.20200617180200.batch
パラメータに指定された日付がある場合は、ファイルを20200614
返す必要があり、パラメータXYZ.ABC.M.20200615180200.batch
値で指定された日付形式はです2020-06-14
。
同様のことを試しましたが、date +%Y%m%d -d "(2020-06-24)+1 days"
代わりに今日の日付が必要です20200615
。XYZ.ABC.M.20200615180200.batch
入力日がある場合、誰かがコマンド全体を共有してファイルを見つけることができますか2020-06-14
?
答え1
あなたは非常に近いです。ブラケットを取り外すと機能します。
$ date +%Y%m%d -d "(2020-06-24)+1 days"
20200702
$ date +%Y%m%d -d "2020-06-24 +1 days"
20200625
または、より具体的に
dt=20200614; # or 2020-06-14, either way works
file=$(date +"XYZ.ABC.M.%Y%m%d180200.batch" -d "$dt + 1 days");
echo $file;
XYZ.ABC.M.20200615180200.batch