[root @test /root ]# grep -n 'know' regexp.txt 3:* I don't know how to do this * grep 会一行一行的去比对 know 这个字符串,请注意,大小写是不一样的! 当该行里面没有 know 这个字符串时, grep 就会将该行舍弃而不显示出来, 不过,到第三行时,出现了 know 了,所以第三行就会被显示出来啦! 例题二:找出这个档案里面含有 * 这个字符,并将行号列出来: [root @test /root ]# grep -n '\*' regexp.txt 3:* I don't know how to do this * 请特别留意喔,在正规表示法里面有相当多的『特殊字符』存在,而要 取消掉这些特殊字符的属性时,反斜线『\』的存在就显的特别重要了! 在这个例子中,或许你会发现使用 grep -n '*' regexp.txt 也可以得到 相同的结果,但是,良好的习惯是需要养成的,这里,请以较为正统的 正规表示法来去除 * 这个特殊字符的属性,对您以后一定会有很多的好处的! 例题三:我要将所有 know 不论大小写都列出来,并列出行号: [root @test /root]# grep -ni 'know' regexp.txt 3:* I don't know how to do this * 4:# I don't Know how to do this $ 5:^ I don't KNOW how to do this @ 如果不理会大小写的差异,加入 -i 这个参数吧!列出行号就以 -n 来达成!