GREP错误是由于扩展的变量而引起的
-
23-09-2019 - |
题
我有一个名为“physics 1b.sh
“。在狂欢中,如果我尝试
x="physics 1b"
grep "string" "$x".sh
格雷普抱怨:
grep: physics 1b: No such file or directory.
但是,当我这样做
grep "string" physics\ 1b.sh
它可以正常工作。因此,我想问题与未扩展的变量有关,以包括GREP需要识别空间的后斜线。我该如何工作?
使用Bash 3.2,Mac OS 10.6。
编辑:
没关系,问题是X设置为 " physics 1b"
, ,但是当我这样做的时候 echo $x
要检查内容物,请击碎前面的空间,这样我就不能说它有所不同。上面的第一种方法实际上是有效的。
解决方案
将整个论点放入双重报价中:
grep "string" "$x.sh"
其他提示
在您的脚本中使用它。
grep "string" "${x}.sh"
另一种方式
grep "string" "${x}.sh"
不隶属于 StackOverflow