1. 正则表达式:处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找、删除、替换某特定字符串的处理程序。 grep sed awk
2. 语系差别:LANG=C时,0 1 2 3.........A B C D ......a b c d .......z;而LANG=zh_CN.UTF-8时,0 1 2 3.........a A b B c C ..........z Z。两种语系带来的差别是,要是参数为[A-Z],那么LANG=C是正确的意思,而zh_CN.UTF-8则会多余的包含了b-z这几个小写字母,就是因为语系不同。
3. Grep
4. grep –n ‘hello’main.c 查找其中指定的字符串
5. grep –n ‘t[ae]st’regurla.txt 在字符串中查找到test 或者 taste这种单词,匹配不同的单词
6. [^g] 就是不允许在相应位置上有g [^a-z]不允许相应位置上有小写字母 ‘!$’查找!在行尾
7. Grep –n –A2 –B3‘key’ filename 查找到关键字key之后的两行,和关键字之前的三行。 A—after B—before
8. 对行首进行查找:使用^ grep –n ‘^the’ regular.txt,对这个文件中行首为the的行进行查找列出。 亦或者想要行首首字母为小写字母, grep –n ‘^[a-z]’ regular.txt,就可以了。
9. 对行尾进行查找:使用$ grep –n ‘\.$’ regular.txt ,对这个文件中末尾使用. 结尾的语句进行列出查找。
10. 将配置文件中的空行和只有#的注释行不显示:grep –v ‘^$’ /etc/syslog.conf | grep –v‘^#’
11. . 表示一定有一个任意字符 ‘g..d’,那么这中间两个字符可以是任意的字符
12. * 表示重复前一个的0到无穷多次的意思。 ‘o*’ 表示有空字符或者一个及以上的o,那么这时候所有的内容都符合,会被全部显示出来;’oo*’ 表示第一个o一定存在,后面可以接多个o,也就是 o oo ooo;依次类推往后。
13. 需要列出句子中,前后都有g的:grep –n ‘g.*g’ msg.txt 这里的.表示的就是任意字符,*和.组合就可以实现两个g中间有0个或者多个字符,可以输出 gg gdg gdfg
14. 限制字符个数: ‘o\{2\}’,查找时候,查找出连续的两个o的单词所在的行。
15. 字符个数限制:’go\{2,5\}g’ 查找,两个g中间有2-5个o的情况。