小编Kir*_*son的帖子

使用常用日志简化 grep 的函数

我正在尝试创建一个函数来简化我必须定期使用的日志的 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 会返回一个无效的选项错误。

我错过了什么?

grep pipe function cat

6
推荐指数
1
解决办法
226
查看次数

标签 统计

cat ×1

function ×1

grep ×1

pipe ×1