如何將目錄中的檔案名稱變更為檔案中包含的新名稱?

如何將目錄中的檔案名稱變更為檔案中包含的新名稱?

我有一個充滿需要更改的檔案名稱的目錄。我不需要簡單地重命名後綴或前綴,而是完全重命名檔案。

我將新檔案名稱包含在名為 new_names 的檔案中。

我可以使用什麼命令來讀取 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}' )

相關內容