我正在尝试获取计算机上每个用户当前正在运行的进程数,但我希望不使用pipe命令来获取相同的输出。
我试过了,但我想用一些像/bin/ps这样的不起作用的东西。

ps aux --noheader | awk '{count[$1]++}END{for (n in count) print count[n], n}'

上述命令的输出为:
1 polkitd
1 bus
2 avahi
89 root

我一直在尝试:
awk ‘{count[$1]++}END{for (n in count) print count[n], n}’ /bin/ps

有人能帮我解决这个问题吗?

最佳答案

您可以使用getline用信息填充变量,例如

 awk ' BEGIN {"who|wc -l"|getline users;print "Users logged on: " users}'
 Users logged on: 2

关于linux - awk不使用管道后使用ps,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28556681/

10-11 23:03
查看更多