这个问题就像这个线程。 如何通过replace文件名中的单词来重命名多个文件?
我的例子比上面的主题更复杂。 这两个variables是从shell脚本其他位置获取的$ name和$ newname。 $ name和$ newname可能有unicode字或像[] <>♫…等特殊的sym,所以任何人都可以帮助我提供一种方法来添加一部分shell脚本来解决文件名replace问题。
顺便说一句,我尝试键入两种命令来更改文件名的一部分,但它不能工作。
rename.ul '$name' '$newname' /home/fy6877/test/final/* ls /home/fy6877/test/final/|xargs -I$ rename.ul '$name' '$newname' $
使用rename或mmv 。 他们都不应该关心在你的名字中是否有UTF-8编码的unicode符号,或者命令行给出的参数是variables还是普通文字。 确保将parameter passing为"$name"而不是'$name'以确保variables的值传递给rename命令。