当我将目录用双引号引起来时,grep 不起作用

当我将目录用双引号引起来时,grep 不起作用

当我做这样的事情时:

grep "hello" /home/paul/*

有用。

但是当我做这样的事情时:

grep "hello" "/home/paul/*"

grep显示错误:

grep: /home/paul/*: 没有这样的文件或目录

这是为什么?

答案1

来自 bash 参考手册:

将字符括在双引号 ('"') 中会保留引号内所有字符的字面值,但 '$'、'`'、'\' 和启用历史扩展时的 '!' 除外。

因此,您必须从引用的字符串中删除特殊字符*,以便将其视为通配符。

grep "hello" "/home/paul/"*

相关内容