grep查找过滤

如果你想使用 ps aux | grep corp 来过滤进程,并且希望不包含包含 “vscode” 路径的进程,你可以使用 grep -v 来排除包含特定字符串的行。下面是一个示例:

ps aux | grep corp | grep -v "vscode"

这个命令首先使用 ps aux | grep corp 来列出包含 “corp” 的所有进程,然后通过 grep -v "vscode" 来过滤掉包含 “vscode” 路径的行。

请注意,这种方法并不总是绝对可靠,因为进程的命令行参数可能包含 “corp” 或 “vscode”,而不仅仅是进程的路径。在实际使用中,请根据你的具体情况检查确保准确性。


如果你想同时忽略包含两个不同路径的进程,你可以使用 grep 结合 -E(或egrep)来使用正则表达式。下面是一个示例:

ps aux | grep corp | grep -Ev "path1|path2"

在这个例子中,-E 使得 grep 支持扩展的正则表达式,而 -v 则表示取反,即排除匹配的行。在正则表达式中,使用 | 表示逻辑或,因此 path1|path2 表示匹配包含 “path1” 或 “path2” 的行。

请根据你的具体情况调整正则表达式,确保排除你想要忽略的路径。


你可以使用 rg 命令(ripgrep)结合正则表达式来检测某一行是否以 “),” 结尾。以下是一个示例:

rg '.*\),\s*$' 文件路径

在这个正则表达式中:

  • .* 匹配零个或多个任意字符。
  • \), 匹配 “),”
  • \s* 匹配零个或多个空白字符(包括空格和制表符)。
  • $ 表示行尾。

这个正则表达式的意思是匹配以 "), " 结尾的行,后面可以有任意数量的空白字符。

请将 “文件路径” 替换为你要搜索的实际文件路径或目录。这样,rg 将在指定路径下搜索满足正则表达式条件的行。


如果你只想匹配以 “),” 结尾并且后面紧跟着回车换行符的行,你可以使用以下 rg 命令:

rg '.*\),\r?$' 文件路径

在这个正则表达式中:

  • .* 匹配零个或多个任意字符。
  • \), 匹配 “),”
  • \r? 匹配零个或一个回车符(\r),表示回车是可选的。
  • $ 表示行尾。

这个正则表达式的目标是匹配以 "), " 结尾并且后面紧跟着零个或一个回车符的行。

请将 “文件路径” 替换为你要搜索的实际文件路径或目录。这样,rg 将在指定路径下搜索满足正则表达式条件的行。

你可能感兴趣的:(我的博客,grep)