特定のファイル名形式のファイルに拡張子を追加する方法

特定のファイル名形式のファイルに拡張子を追加する方法

スクリプトによって生成された複数のファイルがありますが、スクリプトにファイル拡張子を追加することを無視しました。

すべてのファイル名にはこのサブストリングが含まれ、k120ディレクトリ内の他のファイルにはこのサブストリングは含まれていません。

各ファイルに拡張子を追加したいのですが、.datbash(および一般的なシェルスクリプト)が初めてで、どこから始めるべきかわかりません。含まれている部分文字列に基づいてファイル名を変更するにはどうすればよいですか?使えるようですが、| grep k120それ以上はよくわかりません。

forループと正規表現を使用すると簡単にこれを実行できますが、これは間違った(長い)方法のようです。

答え1

ファイルにスペースがないとします。

for i in *k120*; do
    mv -- "$i" "$i.dat"
done

関連情報