https://serverfault.com/questions/70939/how-to-replace-a-text-string-in-multiple-files-in-linux
https://serverfault.com/questions/228733/how-to-rename-multiple-files-by-replacing-word-in-file-name
https://serverfault.com/questions/212153/replace-string-in-files-with-certain-file-extension
https://serverfault.com/questions/33158/searching-a-number-of-files-for-a-string-in-linux
これらの言及された記事はすべて私の質問に答えました。しかし、それらのどれも私のために機能しません。置換しようとしている文字列に#が含まれているためと思われます。これに対処する特別な方法はありますか?
サイトの移行中にéが#U00a9に置き換えられたイメージファイルがあります。これらは次のようになります。
Lucky-#U00a9NBC-80x60.jpg
Lucky-#U00a9NBC-125x125.jpg
Lucky-#U00a9NBC-150x150.jpg
Lucky-#U00a9NBC-250x250.jpg
Lucky-#U00a9NBC-282x232.jpg
Lucky-#U00a9NBC-300x150.jpg
Lucky-#U00a9NBC-300x200.jpg
Lucky-#U00a9NBC-300x250.jpg
Lucky-#U00a9NBC-360x240.jpg
Lucky-#U00a9NBC-400x250.jpg
Lucky-#U00a9NBC-430x270.jpg
Lucky-#U00a9NBC-480x240.jpg
Lucky-#U00a9NBC-600x240.jpg
Lucky-#U00a9NBC-600x250.jpg
Lucky-#U00a9NBC.jpg
そして、私はそれを次のようなものに変更したい:
Lucky-safeNBC-80x60.jpg
Lucky-safeNBC-125x125.jpg
Lucky-safeNBC-150x150.jpg
Lucky-safeNBC-250x250.jpg
Lucky-safeNBC-282x232.jpg
Lucky-safeNBC-300x150.jpg
Lucky-safeNBC-300x200.jpg
Lucky-safeNBC-300x250.jpg
Lucky-safeNBC-360x240.jpg
Lucky-safeNBC-400x250.jpg
Lucky-safeNBC-430x270.jpg
Lucky-safeNBC-480x240.jpg
Lucky-safeNBC-600x240.jpg
Lucky-safeNBC-600x250.jpg
Lucky-safeNBC.jpg
更新:
これらの例はすべて「LU00a9ucky」で始まりますが、ここには異なる名前の多くの画像があります。文字列の「#U00a9」の部分をターゲットとして「safe」に置き換えています。
-n
がno act
オプションです。これにより、実際に使用する前に機能するかどうかを確認できます。画面の出力には、潜在的な新しい名前が正しく表示されましたか?
rename
コマンドを使用しています。名前の変更はのように簡単だと思いますrename -n 's/#/safeNBC/' *.jpg
。