关于grep的一个小问题。
我正在做 :
find . -type d
我有三个目录:
./backup-2013-11-27
./backup-2013-11-26
./backup-2013-11-28
如果我只想从11/26中检索一个,则可以执行以下操作:
find . -type d | grep "2013.*11.*26"
它的工作原理。
但是,我不明白为什么:
find . -type d | grep "2013*11*26"
不起作用...
确实,我在这里不使用regexp,在使用模式,因此*
应该用作通配符,还是不可以?
grep
使用与korn shell不同的正则表达式匹配。
这就是为什么grep必须包含.*
(匹配任意字符0次或更多次)的原因。在ksh
(和中bash
),您仅*
用于该模式。
该grep
方法通常称为正则表达式模式和ksh
通配符模式。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句