我试图执行以下命令:第二个命令之前猛砸符号化引用字符串用空格作为单个单词
ls: 'my: No such file or directory
ls: dir': No such file or directory
使用“设置-x”:
mkdir 'my dir'
CMD="ls 'my dir'"
RESULT=$($CMD)
这导致显示实际发出的命令是:
++ ls ''\''my' 'dir'\'''
这显然是从我的交流中抽象出来的试着去做;这个代码本身并不起任何作用。但我的问题是为什么bash将引用的字符串标记为这样以及如何让它停止?
查看BashFAQ#50:http://mywiki.wooledge.org/BashFAQ/050 – 2014-10-03 22:03:32
谢谢,这非常有帮助。 – cameronhimself 2014-10-03 22:27:43
另请参阅[BashFAQ#48](http://mywiki.wooledge.org/BashFAQ/048)。正如GreyCat所说,“eval”是一种常见的“邪恶”拼写错误。 :) – 2014-10-04 07:39:34