我正在尝试创建一个函数来简化我必须定期使用的日志的 grepping。
我想在管道中使用扩展的正则表达式并重定向输出等。
但是我在使用函数中的标准grep 模式文件语法时遇到了麻烦。
我现在设置它的方式看起来很糟糕,但是可以完成工作:
alias mygrep='cat /path/to/logs/my.log | grep'
Run Code Online (Sandbox Code Playgroud)
这使我可以毫无困难地运行以下内容
mygrep -i -E "WARN|java" |less
Run Code Online (Sandbox Code Playgroud)
似乎正确的实现应该类似于以下内容。
function mygrep () {
args=$*
grep "$args" /path/to/logs/my.log
}
Run Code Online (Sandbox Code Playgroud)
但是,当我将它与上面的搜索和管道参数一起使用时,grep 会返回一个无效的选项错误。
我错过了什么?