修改grep命令--color高亮颜色:将默认红色改为其他颜色
修改grep命令--color高亮颜色:将默认红色改为其他颜色
嘿,这问题我之前也碰到过,默认红色高亮有时候在浅色背景上真的不太显眼,改成蓝色或者其他颜色其实很简单,分两种场景给你讲操作方法:
一、临时修改(仅当前终端会话生效)
直接在执行grep命令前设置GREP_COLOR环境变量就行,蓝色对应的ANSI颜色码是34,套到你的命令里就是:
GREP_COLOR='34' grep bash /etc/passwd
要是想要更突出的效果,比如带白色背景的蓝色字体,可以用组合颜色码34;47(34代表蓝色字体,47代表白色背景),再加个--color=always确保管道输出时也能保留颜色:
GREP_COLOR='34;47' grep --color=always bash /etc/passwd
二、永久修改(所有终端会话生效)
不想每次都手动敲环境变量?那就把配置写到shell的初始化文件里:
- 如果你用的是bash,编辑
~/.bashrc文件,添加一行:
或者用更灵活的export GREP_COLOR='34'GREP_COLORS变量(推荐,支持细粒度配置),只指定匹配文本的颜色:export GREP_COLORS='mt=34' - 如果你用的是zsh,就编辑
~/.zshrc文件,添加同样的内容。
保存文件后,执行source ~/.bashrc(zsh就执行source ~/.zshrc)让配置立即生效,之后再用grep,匹配内容就会默认以蓝色高亮显示啦!
附:常用ANSI颜色码参考
想换其他颜色的话,给你列几个常用的字体颜色码:
- 30:黑色
- 31:红色(默认)
- 32:绿色
- 33:黄色
- 34:蓝色
- 35:紫色
- 36:青色
- 37:白色
备注:内容来源于stack exchange,提问作者SpiderMan




