ワイルドカードを使用してファイルを移動し、ファイル名にタイムスタンプを追加します。

ワイルドカードを使用してファイルを移動し、ファイル名にタイムスタンプを追加します。

ファイルをアーカイブフォルダに移動し、ファイル名の前にタイムスタンプを追加する必要があります。

mv /dev/DataStage/myProject/source/TEST/MyFile_*.csv 
/dev/DataStage/myProject/Archive/TEST/MyFile_*.csv

MyFile_20180817.csvをMyFile_20180817.csvの代わりにMy〜1.csvに移動します。

ファイルをアーカイブフォルダに移動するときは、ファイル名の前にタイムスタンプを追加する必要があります。例: MyFile_20180817.csv から 20180817_1057.MyFile_20180817.csv:

mv /dev/DataStage/myProject/source/TEST/MyFile_*.csv 
/dev/DataStage/myProject/Archive/TEST/`date +%Y%m%d_%H%M`.MyFile_*.csv

MyFile_20180817.csvをMyFile_20180817.csvの代わりに201808〜1.CSVに移動します。

ありがとうございます。

答え1

  1. 短縮するには、名前変更を使用します(ファイルシステムが異なる場合は失敗します)。

    "/dev/DataStage/myProject/Archive/TEST/`Date+%Y%m%d_%H%M`" の名前を変更します。 /dev/DataStage/myProject/source/TEST/MyFile_*.csv

  2. ループを含む

    /dev/DataStage/myProject/source/TEST/MyFile_*.csv にあるファイルの場合、 filename=`basename $file` mv $file /dev/DataStage/myProject/Archive/TEST/`date +%Y%m% d_ %H%M`。$ {ファイル名}完了

関連情報