如何从 grep 结果中减去 1
How to substract 1 from grep result
我正在编写一个 bash 命令,用于计算指定端口上的服务数量 运行。在我的例子中是 4092、4903、4904、4905。下面是我的命令:
ps -ef | grep '4905\|4904\|4903\|4902' | wc -l
输出:5
这里是“\|”作为 OR 运算符。现在它的结果是 5,因为它 greps 命令本身。如何从答案中减去 1,以便输出为 4。
您可以在打印匹配数之前删除包含结果本身的最后一行:
ps -ef | grep '4905\|4904\|4903\|4902' | head -n -1 | wc -l
您可以保存 wc
并使用 awk
来获得预期的数字
ps -ef|grep ...|awk 'END{print NR-1}'
使用:
ps -ef | grep '4905\|4904\|4903\|4902' | wc -l | awk '{print [=10=]-1}'
我正在编写一个 bash 命令,用于计算指定端口上的服务数量 运行。在我的例子中是 4092、4903、4904、4905。下面是我的命令:
ps -ef | grep '4905\|4904\|4903\|4902' | wc -l
输出:5
这里是“\|”作为 OR 运算符。现在它的结果是 5,因为它 greps 命令本身。如何从答案中减去 1,以便输出为 4。
您可以在打印匹配数之前删除包含结果本身的最后一行:
ps -ef | grep '4905\|4904\|4903\|4902' | head -n -1 | wc -l
您可以保存 wc
并使用 awk
来获得预期的数字
ps -ef|grep ...|awk 'END{print NR-1}'
使用:
ps -ef | grep '4905\|4904\|4903\|4902' | wc -l | awk '{print [=10=]-1}'