パラメーターに渡された日付に基づいてファイルを見つけます。

パラメーターに渡された日付に基づいてファイルを見つけます。

パラメーターに指定された日付に基づいて、翌日のファイルを見つける必要があります。

たとえば、次のようなファイルがあります。

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"代わりに今日の日付が必要です20200615XYZ.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

おすすめ記事