查看“每天一命令之grep”的源代码
←
每天一命令之grep
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
=常用参数= <pre> #子匹配,把匹配到的打印出来 cat test.txt | grep -E "'.*REDIS_PASSWORD'" -o cat test.txt |grep -E ":.*REDIS_PASSWORD=" -o | sort | uniq -c #eg 查看 所有databases.php 里REDIS_PASSWORD 的 find ./ -type f -name "database.php" | xargs grep "REDIS" >> redisvar.txt [root@prod-access nginx]# head redisvar.txt ./service/sscf-course-server/server.course.com/config/database.php: 'host' => env('REDIS_HOST', '127.0.0.1'), ./service/sscf-course-server/server.course.com/config/database.php: 'password' => env('REDIS_PASSWORD', null), ./service/sscf-course-server/server.course.com/config/database.php: 'port' => env('REDIS_PORT', 6379), ./service/sscf-course-server/server.course.com/config/database.php: 'host' => env('AUTH_USER_REDIS_HOST', '127.0.0.1'), ./service/sscf-course-server/server.course.com/config/database.php: 'port' => env('AUTH_USER_REDIS_PORT', 6379), ./service/sscf-course-server/server.course.com/config/database.php: 'database' => env('AUTH_USER_REDIS_DATABASE', 0), ./service/sscf-course-server/server.course.com/config/database.php: 'password' => env('AUTH_USER_REDIS_PASSWORD', null), ./service/cfb-question-server/question.service.cfb.com/vendor/laravel/lumen-framework/config/database.php: 'cluster' => env('REDIS_CLUSTER', false), #得出所有的 REDIS_PASSWORD 变量 [root@prod-access nginx]# cat redisvar.txt | grep -E "'.*REDIS_PASSWORD'" -o | sort |uniq -c 5 'password' => env('AUTH_AGENT_REDIS_PASSWORD' 10 'password' => env('AUTH_USER_REDIS_PASSWORD' 2 'password' => env('CRM_JWT_REDIS_PASSWORD' 77 'password' => env('REDIS_PASSWORD' 1 'password' => env('REDIS_PASSWORD' #多个and ps aux | grep 'nginx\|php-fpm' ps -ef | grep -E 'tomcat1 |tomcat2 |grep -v grep ' grep -E 'dd|77' file dd 77 [root@evantestvm ~]# cat file dd ee 44 66 77 grep -rn sth somefiles #比dat 好 ##并 fstab 文件中 有 /data 和 UUID 关键词 grep /data /etc/fstab | grep UUID grep 同时满足多个关键字和满足任意关键字 ① grep -E "word1|word2|word3" file.txt 满足任意条件(word1、word2和word3之一)将匹配。 ② grep word1 file.txt | grep word2 |grep word3 试了好像不行 必须同时满足三个条件(word1、word2和word3)才匹配。 -r, --recursive 等同于--directories=recurse -i, --ignore-case 在模式和数据中忽略大小写 不区分大小写 -n, --line-number 输出的同时打印行号 -v: --invert-match 反转 显示没有匹配的行。 反选 </pre> [http://blog.51cto.com/haowen/2068456 find & grep 总结] == 精准 非贪婪匹配== <pre> -w, --word-regexp 强制 PATTERN 仅完全匹配字词 Select only those lines containing matches that form whole words. The test is that the matching substring must either be at the beginning of the line, or preceded by a non-word constituent character. Similarly, it must be either at the end of the line or followed by a non-word constituent character. Word-constituent characters are letters, digits, and the underscore. This option has no effect if -x is also specified. grep "but container not found" application* | grep -oP 'asnId: \K\d+(?= )' | sort --unique 第一个grep过滤出所有符合要求的行,第二个grep用regex格式得到匹配组,sort可以保证输出的匹配值是唯一的。至于\K还有( ?=)的意思可以参考这里:https://unix.stackexchange.com/questions/13466/can-grep-output-only-specified-groupings-that-match 原文链接:https://blog.csdn.net/weixin_42325834/article/details/110254058 </pre> ==过滤注释和空行== cat /etc/zabbix/zabbix_agentd.conf | grep -v \^# | grep -v \^$ =see also= [https://blog.51cto.com/future/88653 grep 参数使用和实例] [https://blog.csdn.net/weixin_34408717/article/details/85854069 grep和sed匹配多个字符关键字的用法] [https://blog.csdn.net/mmbbz/article/details/51035401 Linux: grep多个关键字“与”和“或”] [https://blog.csdn.net/pan_tian/article/details/7685815 Linux/Unix下grep命令使用的几个例子[grep Examples<nowiki>]</nowiki>] [[category:shell]]
返回至
每天一命令之grep
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
我的导航
关于我
shell
python
ops
linuxchina.net
blog.linuxchina
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息