当我做这样的事情时:
grep "hello" /home/paul/*
有用。
但是当我做这样的事情时:
grep "hello" "/home/paul/*"
grep
显示错误:
grep: /home/paul/*: 没有这样的文件或目录
这是为什么?
答案1
来自 bash 参考手册:
将字符括在双引号 ('"') 中会保留引号内所有字符的字面值,但 '$'、'`'、'\' 和启用历史扩展时的 '!' 除外。
因此,您必须从引用的字符串中删除特殊字符*
,以便将其视为通配符。
grep "hello" "/home/paul/"*