如何从列表中递归地重命名文件名的各个部分?

如何从列表中递归地重命名文件名的各个部分?

我有这个脚本

for file in /folder1/folder2/*; do mv "${file}" "${file//\[Free]/}"; done

我希望它:搜索文件夹 1 和文件夹 2 中的所有子文件夹。从列表中提取,而不仅仅是一个单词“免费”。

任何帮助将非常感激。 :)

答案1

虽然不知道您在这里到底想做什么,但您似乎想要查找具有特定名称的所有文件,然后使用移动命令重命名它们,并将列表中的单词附加到旧名称上。如果我理解错了,请告诉我,因为看起来您可能还试图替换部分名称。

当前文件位置和名称以及所需位置和文件名的示例会有所帮助。

与此同时,这也许能让你得到你所需要的东西。

# Iterates through a text file
while read WORDLIST;
    # do stuff
    do for file in /*/*/; mv "${file}" "${file}${WORDLIST}"; 

done < <Path to WORDLIST>

相关内容