
フォルダの下に/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エントリを削除します。glob
var
または、次のような場合perl-rename
(Red Hatでは何と呼ぶのか覚えていません。rename
、prename
またはいずれかですperl-rename
):
rename 's/3all_servers_home\\//' /home/files/*3all_servers_home*