我正在尝试使用mv
重命名文件。某些要重命名的文件名称包含撇号(或单引号)。文件名将mv
与变量一起传递。但我无法让它发挥作用。
当我直接给出文件名时mv
,它确实有效,如下所示:
mv "Artificial intelligence/Markoff_Rosenberg__China's_intelligent_weaponry_gets_smarter.pdf" "Artificial intelligence/Markoff_Rosenberg__Chinas_intelligent_weaponry_gets_smarter_(r1205).pdf"
但是当我使用变量时,它不起作用:
orig="Artificial intelligence/Markoff_Rosenberg__China's_intelligent_weaponry_gets_smarter.pdf"
new="Artificial intelligence/Markoff_Rosenberg__Chinas_intelligent_weaponry_gets_smarter_(r1205).pdf"
mv "$orig" "$new"
我收到以下错误消息:
mv: cannot stat 'Artificial intelligence/Markoff_Rosenberg__China'\''s_intelligent_weaponry_gets_smarter.pdf': No such file or directory
这是为什么?为什么\''
错误信息中的文件名多了一个?问题的解决办法是什么?
在此先感谢您的帮助!