我在文件名中有一个&,当我输入已验证到命令行的路径时,它无法识别它。
这是路径:
/用户/ wendywang /库/开发人员/Xcode/DerivedData/ConsumeriOS-cchvkfmgubtyzydmbsgaxxxxxxxx/Build/Products/Debug-iphoneos/PG&E.app
它显示的错误是
指定的目标进程无效
E.app:找不到命令
由于&,它不起作用。我想知道如何在此处处理&?谢谢!
最佳答案
为了澄清起见,我将使用一个名字奇怪的文件重现该问题,然后尝试执行它。观察:
echo 'echo hello' > 'qaz&bar'
chmod +x 'qaz&bar'
./'qaz&bar'
或指定其完整路径:
/home/none/StackExchange/qaz\&bar
请注意
\
转义特殊的&
字符。要复制文件,如下所示:
cp '/home/none/StackExchange/qaz&bar' normal_name
本质上,可以使用单个记号
''
或反斜杠\
字符来帮助操纵此类文件名,并防止Shell解释特殊字符。