首先,我将所有工作流程保存在一个文件中。
ps -el > file1
我的想法是计算 file1 中存在 vi 的行数。
我尝试过类似wc -l | grep vi file1
正确的做法是什么?
答案1
您的代码几乎可以工作,您只需更改
wc -l | grep vi file1
到
grep vi file1 | wc -l
管道运算符使用左侧程序的输出作为右侧程序的输入。
答案2
为什么不使用pgrep
:
pgrep "^vi" | wc -l
pgrep 手册页:
概要
pgrep [options] pattern
描述
pgrep looks through the currently running processes and lists the process IDs which matches the selection criteria to stdout.
编辑:(使用文件):
ps aux > file1
awk '{ print $11 }' file1 | egrep '^vi' | wc -l