変更するファイル名でいっぱいのディレクトリがあります。単にサフィックスやプレフィックスの名前を変更する必要はなく、ファイル名を完全に変更する必要があります。
new_names.txtというファイルに新しいファイル名を含めました。
new_namesに含まれる名前を読み取ってディレクトリ内のファイルの名前を変更するには、どのコマンドを使用できますか?
答え1
これを使用してコマンドのリストを生成できますmv
。
paste /path/to/new_names <(ls /path/to/files | grep -v new_names) | awk '$2 !~ /^$/ {print "mv " $2,$1}'
よかったら、以下を使って実行できます。
cd /path/to/files
$( paste /path/to/new_names <(ls /path/to/files | grep -v new_names) | awk '$2 !~ /^$/ {print "mv " $2,$1}' )