- 论坛徽章:
- 0
|
Grep : g (globally) search for a re (regular expression ) and p (print ) the results.\r\n\r\n1、参数:\r\n-I :忽略大小写\r\n-c :打印匹配的行数\r\n-l :从多个文件中查找包含匹配项\r\n-v :查找不包含匹配项的行\r\n-n:打印包含匹配项的行和行标\r\n\r\n2、RE(正则表达式)\r\n\\ 忽略正则表达式中特殊字符的原有含义\r\n^ 匹配正则表达式的开始行\r\n$ 匹配正则表达式的结束行\r\n\\< 从匹配正则表达式的行开始\r\n\\>; 到匹配正则表达式的行结束\r\n[ ] 单个字符;如[A] 即A符合要求\r\n[ - ] 范围 ;如[A-Z]即A,B,C一直到Z都符合要求\r\n. 所有的单个字符\r\n* 所有字符,长度可以为0\r\n\r\n3、举例\r\n# ps -ef | grep in.telnetd\r\nroot 19955 181 0 13:43:53 ? 0:00 in.telnetd\r\n\r\n# more size.txt size文件的内容\r\nb124230\r\nb034325\r\na081016\r\nm7187998\r\nm7282064\r\na022021\r\na061048\r\nm9324822\r\nb103303\r\na013386\r\nb044525\r\nm8987131\r\nB081016\r\nM45678\r\nB103303\r\nBADc2345\r\n\r\n# more size.txt | grep \'[a-b]\' 范围 ;如[A-Z]即A,B,C一直到Z都符合要求\r\nb124230\r\nb034325\r\na081016\r\na022021\r\na061048\r\nb103303\r\na013386\r\nb044525\r\n# more size.txt | grep \'[a-b]\'*\r\nb124230\r\nb034325\r\na081016\r\nm7187998\r\nm7282064\r\na022021\r\na061048\r\nm9324822\r\nb103303\r\na013386\r\nb044525\r\nm8987131\r\nB081016\r\nM45678\r\nB103303\r\nBADc2345\r\n\r\n# more size.txt | grep \'\' 单个字符;如[A] 即A符合要求\r\nb124230\r\nb034325\r\nb103303\r\nb044525\r\n# more size.txt | grep \'[bB]\'\r\nb124230\r\nb034325\r\nb103303\r\nb044525\r\nB081016\r\nB103303\r\nBADc2345\r\n\r\n# grep \'root\' /etc/group\r\nroot::0:root\r\nbin::2:root,bin,daemon\r\nsys::3:root,bin,sys,adm\r\nadm::4:root,adm,daemon\r\nuucp::5:root,uucp\r\nmail::6:root\r\ntty::7:root,tty,adm\r\nlp::8:root,lp,adm\r\nnuucp::9:root,nuucp\r\ndaemon::12:root,daemon\r\n\r\n# grep \'^root\' /etc/group 匹配正则表达式的开始行\r\nroot::0:root\r\n\r\n\r\n# grep \'uucp\' /etc/group\r\nuucp::5:root,uucp\r\nnuucp::9:root,nuucp\r\n\r\n# grep \'\\<uucp\' /etc/group\r\nuucp::5:root,uucp\r\n\r\n\r\n# grep \'root$\' /etc/group 匹配正则表达式的结束行\r\nroot::0:root\r\nmail::6:root\r\n\r\n\r\n# more size.txt | grep -i \'b1..*3\' -i :忽略大小写\r\n\r\nb124230\r\nb103303\r\nB103303\r\n\r\n# more size.txt | grep -iv \'b1..*3\' -v :查找不包含匹配项的行\r\n\r\nb034325\r\na081016\r\nm7187998\r\nm7282064\r\na022021\r\na061048\r\nm9324822\r\na013386\r\nb044525\r\nm8987131\r\nB081016\r\nM45678\r\nBADc2345\r\n\r\n# more size.txt | grep -in \'b1..*3\'\r\n1:b124230\r\n9:b103303\r\n15:B103303\r\n\r\n# grep \'$\' /etc/init.d/nfs.server | wc -l\r\n128\r\n# grep \'\\$\' /etc/init.d/nfs.server | wc –l 忽略正则表达式中特殊字符的原有含义\r\n\r\n15\r\n# grep \'\\$\' /etc/init.d/nfs.server\r\ncase \"$1\" in\r\n>;/tmp/sharetab.$$\r\n[ \"x$fstype\" != xnfs ] && \\\r\necho \"$path\\t$res\\t$fstype\\t$opts\\t$desc\" \\\r\n>;>;/tmp/sharetab.$$\r\n/usr/bin/touch -r /etc/dfs/sharetab /tmp/sharetab.$$\r\n/usr/bin/mv -f /tmp/sharetab.$$ /etc/dfs/sharetab\r\nif [ -f /etc/dfs/dfstab ] && /usr/bin/egrep -v \'^[ ]*(#|$)\' \\\r\nif [ $startnfsd -eq 0 -a -f /etc/rmmount.conf ] && \\\r\nif [ $startnfsd -ne 0 ]; then\r\nelif [ ! -n \"$_INIT_RUN_LEVEL\" ]; then\r\nwhile [ $wtime -gt 0 ]; do\r\nwtime=`expr $wtime - 1`\r\nif [ $wtime -eq 0 ]; then\r\necho \"Usage: $0 { start | stop }\"\r\n\r\n\r\n# more size.txt\r\n\r\nthe test file\r\ntheir are files\r\nThe end\r\n\r\n# grep \'the\' size.txt\r\nthe test file\r\ntheir are files\r\n\r\n# grep \'\\<the\' size.txt\r\nthe test file\r\ntheir are files\r\n\r\n# grep \'the\\>;\' size.txt\r\nthe test file\r\n\r\n# grep \'\\<the\\>;\' size.txt\r\nthe test file\r\n\r\n# grep \'\\<[Tt]he\\>;\' size.txt\r\nthe test file\r\nThe end |
|