linux 下的通配符和正则表达式不一样

 为什么ls *中的*代表的是任意个数的字符,而正则表达式中的*表示的是前一个字符匹配0次或任意多次?而且ls 使用^匹配开头的字符时无效?

这是linux下通配符与正则表达式的区别。其实,ls,rm,mv等命令并不支持正则表达式,而是支持通配符,sed,grep,awk等命令是支持正则表达式的。另一种说法是:通配符多用在文件名,正则表达式用于文本处理。

 

posted @ 2018-02-26 16:46  ZzzzHong  阅读(275)  评论(0编辑  收藏  举报