gpt4 book ai didi

grep - 如何始终从 `ps aux`命令中截取PID?

转载 作者:行者123 更新时间:2023-12-02 06:39:34 26 4
gpt4 key购买 nike

我想从我的进程中获取 pid。我愿意ps aux | cut -d ' ' -f 2但我注意到有时它会获取 pid,有时则不会:

[user@ip ~]$ ps aux 
user 2049 0.5 10.4 6059216 1623520 ? Sl date 8:48 process
user 12290 0.3 6.9 5881568 1086244 ? Sl date 2:30
[user@ip ~]$ ps aux | cut -d ' ' -f 2

12290
[user@ip ~]$ ps aux | cut -d ' ' -f 3
2049

请注意第一个 cut命令正在通过管道将其发送到 2而第二个将其通过管道传输到 3 。如何从这些数字中选出 PID,而无需知道要使用哪个数字( 23 )?

有人可以告诉我这两者之间的区别以及为什么它会选择其中一个而不是另一个吗?

最佳答案

-d ' '表示使用单个空格作为分隔符。由于 2049 之前有 1 个空格,12290 之前有 2 个空格,因此您的命令通过 -f 2 获取它们。和-f 3

我建议使用ps aux | awk '{print $2}'获取这些 pid。

或者您可以使用tr首先挤压这些空间 ps aux | tr -s ' ' | cut -d ' ' -f 2

关于grep - 如何始终从 `ps aux`命令中截取PID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46008880/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com