検索+ファイル名を再編集する方法

検索+ファイル名を再編集する方法

フォルダの下に/home/files次のファイルがあります

VER_3all_servers_home\server383_232.35.35.341
VER_3all_servers_home\server323_232.35.35.342
VER_3all_servers_home\server313_232.35.35.343
VER_3all_servers_home\server303_232.35.35.344
VER_3all_servers_home\server381_232.35.35.345
VER_3all_servers_home\server380_232.35.35.346

3all_servers_home\下のすべてのファイルから単語を削除してファイルを再編集します。/home/files

だからファイルは次のようになります

VER_server383_232.35.35.341
VER_server323_232.35.35.342
VER_server313_232.35.35.343
VER_server303_232.35.35.344
VER_server381_232.35.35.345
VER_server380_232.35.35.346

これを行う方法についての提案はありますか?

ベストアンサー1

あなたはできます:

for f in /home/files/*3all_servers_home*; do 
    mv -- "$f" "${f//3all_servers_home\\}"
done

この形式は変数から${var//glob}すべてのglobエントリを削除します。globvar

または、次のような場合perl-rename(Red Hatでは何と呼ぶのか覚えていません。renameprenameまたはいずれかですperl-rename):

rename 's/3all_servers_home\\//' /home/files/*3all_servers_home*

おすすめ記事