Unixで特定の拡張子にファイル名を変更し、日付を追加します。

Unixで特定の拡張子にファイル名を変更し、日付を追加します。

次のファイルの名前を次のように変更したいと思います。

Original files : 
x.1.gz
y.1.gz

名前を次に変更します。

x.dateTime.gz
y.dateTime.gz

同じタスクを実行するには、次のスクリプトを使用しています。しかし、ファイル名を変更するのではなく、ファイルを削除することです。

for file in *.1.gz; do
    mv "$file" "$($(date +’%Y%m%d%H%M’) "$file" .1.gz).gz"
done

答え1

次のことを試すことができます。

for i in *.1.gz; do mv "$i" "$(basename $i .1.gz).$(date +'%Y%m%d%H%M').gz"; done

basenameファイル名の最初の部分を抽出します。

このdateコマンドは、'質問に使用した一重引用符ではなく、一重引用符を使用します。

関連情報