Linux:grep命令:修订间差异
imported>Soleverlee 以“=多个关键字= <source lang="bash"> grep -E 'GET|POST' log.txt egrep 'GET|POST' log.txt </source> =其他= <source lang="bash"> grep -i pattern files #不区分...”为内容创建页面 |
imported>Soleverlee 无编辑摘要 |
||
第3行: | 第3行: | ||
grep -E 'GET|POST' log.txt | grep -E 'GET|POST' log.txt | ||
egrep 'GET|POST' log.txt | egrep 'GET|POST' log.txt | ||
</source> | |||
=正则表达式= | |||
<source lang="bash"> | |||
grep -c "48" test.txt # 统计所有以“48”字符开头的行有多少 | |||
grep -i "May" test.txt # 不区分大小写查找“May”所有的行) | |||
grep -n "48" test.txt # 显示行号;显示匹配字符“48”的行及行号,相同于 nl test.txt # |grep 48) | |||
grep -v "48" test.txt # 显示输出没有字符“48”所有的行) | |||
grep "471" test.txt # 显示输出字符“471”所在的行) | |||
grep "48;" test.txt # 显示输出以字符“48”开头,并在字符“48”后是一个tab键所在的行 | |||
grep "48[34]" test.txt # 显示输出以字符“48”开头,第三个字符是“3”或是“4”的所有的行) | |||
grep "^[^48]" test.txt # 显示输出行首不是字符“48”的行) | |||
grep "[Mm]ay" test.txt # 设置大小写查找:显示输出第一个字符以“M”或“m”开头,以字符“ay”结束的行) | |||
grep "K…D" test.txt # 显示输出第一个字符是“K”,第二、三、四是任意字符,第五个字符是“D”所在的行) | |||
grep "[A-Z][9]D" test.txt # 显示输出第一个字符的范围是“A-D”,第二个字符是“9”,第三个字符的是“D”的所有的行 | |||
grep "[35]..1998" test.txt # 显示第一个字符是3或5,第二三个字符是任意,以1998结尾的所有行 | |||
grep "4\{2,\}" test.txt # 模式出现几率查找:显示输出字符“4”至少重复出现两次的所有行 | |||
grep "9\{3,\}" test.txt # 模式出现几率查找:显示输出字符“9”至少重复出现三次的所有行 | |||
grep "9\{2,3\}" test.txt # 模式出现几率查找:显示输出字符“9”重复出现的次数在一定范围内,重复出现2次或3次所有行 | |||
grep -n "^$" test.txt # 显示输出空行的行号 | |||
ls -l |grep "^d" 如果要查询目录列表中的目录 同:ls -d * | |||
ls -l |grep "^d[d]" 在一个目录中查询不包含目录的所有文件 | |||
ls -l |grpe "^d…..x..x" 查询其他用户和用户组成员有可执行权限的目录集合 | |||
</source> | </source> | ||
=其他= | =其他= |
2017年5月17日 (三) 04:41的最新版本
多个关键字
grep -E 'GET|POST' log.txt
egrep 'GET|POST' log.txt
正则表达式
grep -c "48" test.txt # 统计所有以“48”字符开头的行有多少
grep -i "May" test.txt # 不区分大小写查找“May”所有的行)
grep -n "48" test.txt # 显示行号;显示匹配字符“48”的行及行号,相同于 nl test.txt # |grep 48)
grep -v "48" test.txt # 显示输出没有字符“48”所有的行)
grep "471" test.txt # 显示输出字符“471”所在的行)
grep "48;" test.txt # 显示输出以字符“48”开头,并在字符“48”后是一个tab键所在的行
grep "48[34]" test.txt # 显示输出以字符“48”开头,第三个字符是“3”或是“4”的所有的行)
grep "^[^48]" test.txt # 显示输出行首不是字符“48”的行)
grep "[Mm]ay" test.txt # 设置大小写查找:显示输出第一个字符以“M”或“m”开头,以字符“ay”结束的行)
grep "K…D" test.txt # 显示输出第一个字符是“K”,第二、三、四是任意字符,第五个字符是“D”所在的行)
grep "[A-Z][9]D" test.txt # 显示输出第一个字符的范围是“A-D”,第二个字符是“9”,第三个字符的是“D”的所有的行
grep "[35]..1998" test.txt # 显示第一个字符是3或5,第二三个字符是任意,以1998结尾的所有行
grep "4\{2,\}" test.txt # 模式出现几率查找:显示输出字符“4”至少重复出现两次的所有行
grep "9\{3,\}" test.txt # 模式出现几率查找:显示输出字符“9”至少重复出现三次的所有行
grep "9\{2,3\}" test.txt # 模式出现几率查找:显示输出字符“9”重复出现的次数在一定范围内,重复出现2次或3次所有行
grep -n "^$" test.txt # 显示输出空行的行号
ls -l |grep "^d" 如果要查询目录列表中的目录 同:ls -d *
ls -l |grep "^d[d]" 在一个目录中查询不包含目录的所有文件
ls -l |grpe "^d…..x..x" 查询其他用户和用户组成员有可执行权限的目录集合
其他
grep -i pattern files #不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files #只列出匹配的文件名,
grep -L pattern files #列出不匹配的文件名,
grep -w pattern files #只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep -C number pattern files :匹配的上下文分别显示[number]行