任何人都可以帮助为什么这会给我带来错误,而不是在~/.bashrc
工作。
非常感谢:
alias ferr='grep ^ \'ERRROR\' '
尝试让ferr找到所有以^ ERROR
开头的行(注意:^
和ERRROR
之间的空格)。
我也试过了,但似乎没有用:
ferr() {grep ^' ERROR' "$@"}
这可能是其中一个当然是问题的时刻。
答案 0 :(得分:1)
有几个问题。单个刻度\
内部无效。所以shell看到:grep ^ \
后跟ERROR' '
。这意味着shell只能看到四个滴答中的三个,并且它会想知道最后一个走到哪里。
接下来,我认为^
不是grep
的有效参数。试试"^ ERROR"
(并确保你也可以获得R
的数量。
如果你想在一行开头匹配某些内容,请使用
alias ferr="egrep '^pattern'"
模式是你寻找的。如果模式真的包含^
,这会变得更加复杂。为简单起见,我建议搜索:
alias ferr="egrep '^. ERROR'"
即。搜索任何以任何内容开头的行,后跟空格,后跟单词ERROR
答案 1 :(得分:0)
尝试:
alias ferr="grep ^ERRROR"
要在ERROR尝试之前包含空格:
alias ferr="grep \"^ ERRROR\""
答案 2 :(得分:0)
使用alias ferr='grep -E "^ERROR"'
然后搜索以ERROR开头的所有行,只需使用[bash]$ ferr <filename>
。
要使用其他字符串进行搜索,请替换"