获取进程中活动线程数的值

时间:2014-09-11 11:26:16

标签: unix ps

我正在尝试使用命令行获取UNIX中进程的线程数。在浏览了unix命令的手册页后,我了解到以下命令:

ps -o nlwp <pid>

返回进程中生成的线程数。

每当我在unix中执行上述命令时,它返回:

NLWP
   7

现在,我想在7之前忽略NLWP和空格。

那我只是对一个值感兴趣,因为我将在脚本中使用它,我正在编写单元测试?

是否可以仅获取值,并忽略所有内容(标题 NLWP ,空格)?

1 个答案:

答案 0 :(得分:1)

您始终可以使用--no-headers中的ps选项删除标题。

在这种情况下,使用awk只打印第一个值:

ps --no-headers -o nlwp <pid> | awk '{print $1}'   

tr删除空格:

ps --no-headers -o nlwp <pid> | tr -d ' '

如果您的--no-headers版本不支持ps,则其中任何一个都可以:{/ p>

ps -o nlwp <pid> | awk 'END {print $1}'
ps -o nlwp <pid> | tail -1 | tr -d' '