我在用
grep -r [^a-zA-Z0-9]myVariableName[^a-zA-Z0-9] -n JS_files/
作为 mygrep 文件
grep -r [^a-zA-Z0-9]$1[^a-zA-Z0-9] -n JS_files/
进而
sh mygrep myVariableName
但是这样我就失去了 grep 输出中相应行的单词突出显示。如何才能实现类似的效果而不丢失 grep ubuntu 终端颜色突出显示?
另外我的 grep 默认忽略大小写,我该如何强制区分大小写?
答案1
您的grep
命令正在使用--color=auto
:
$ alias grep
alias grep='grep --color=auto'
因此,您仍然可以通过添加此块来获得颜色grep
:
grep --color=auto -r [^a-zA-Z0-9]$1[^a-zA-Z0-9] -in JS_files/
^^^^^^^^^^^^
另外我的 grep 默认忽略大小写,我该如何强制区分大小写?
这意味着你的 grep 正在使用-i
:
-i, --ignore-case
忽略 PATTERN 和输入文件中的大小写区别。(-i 由 POSIX 指定。)
您有两个选择:
1) 尝试使用默认的 grep \grep
。它将绕过任何别名(请参阅\curl … | bash …斜线是干什么用的?了解更多信息):
\grep --color=auto -r [^a-zA-Z0-9]$1[^a-zA-Z0-9] -in JS_files/
2) 将grep
你的定义更改~/.bashrc
为你想要的。现在它将类似于:
alias grep="grep --color=auto -i"
答案2
~/.bashrc
添加至文件末尾
alias grep="/bin/grep --color=auto"