全部博文(48)
分类: Python/Ruby
2010-04-23 16:01:29
grep对文件或管道按给定的模式搜索匹配的行。默认情况下,grep打印匹配的行。 1. Grep的严格匹配 -w : 对于每个单词,进行严格匹配(全字匹配) letters, digits,
and the underscore(下划线) 作为单词组成部分 -w 不是万能的 $ grep -w '^test'
/etc/passwd test:x:1002:1002::/home/test:/bin/bash test.k:x:1004:1004::/home/test.k:/bin/sh 使用额外的字符加强匹配 grep ‘^test:’ /etc/passwd grep ‘^/data[[:blank:]]’ /etc/fstab 2.
grep 高亮显示匹配 grep --color ## 自动选择是否高亮 grep --color=always
## 强制高亮(匹配到文件,还是高亮) 3.
Grep只打印匹配的部分 grep
–o eg. Grep –color –o ‘^2.[0-9]’ 4.
一次性Grep -m NUM,
--max-count=NUM Stop reading a file after NUM
matching lines. -q, --quiet,
--silent Quiet; do not write anything to
standard output. Exit immediately with
zero status if any match is found, 只想知道能不能找到test的记录行: grep ‘^test:’
/etc/passwd &> /dev/null; then if (( $? == 0
)); then echo “user test found” fi 使用 -m1 -q 只要grep成功一行即退出: if grep -m1 -q
‘^test:’
/etc/passwd; then echo “user test found” fi 5.
Grep成功的文件名 搜出所有匹配的文件名 grep -l grep -l -R -m1
$pattern * find -type f | xargs
grep -l -m1 36000 删除这些找到的文件: find -type f | xargs
grep -l -m1 $pattern | xargs rm –v 6.
大小写: -i 7.
上下n行: -n 8.
Grep成功的前N行: grep -B n 9.
Grep成功的后N行 : grep -A n