在 Solaris 中通过命令对 ps 输出进​​行排序

在 Solaris 中通过命令对 ps 输出进​​行排序

ps本练习的目的是转储Sorted by 命令的输出。

当系统运行时,我们希望将所有正在运行的进程按命令排序转储到文件中。

Linux 中有一个排序选项,如下所示。

ps -ef --sort -comm | grep -v grep | grep java > /tmp/preboot.log

服务器重新启动并且所有进程重新启动后,我希望再次转储输出,如下所示。

ps -ef --sort -comm | grep -v grep | grep java > /tmp/postboot.log

使用diff /tmp/preboot.log /tmp/postboot.log我们可以确保所有进程都已启动,没有发现任何差异。

以上在 Linux 中有效,在 Solaris 中无效。

请针对我的 Solaris 进程重新启动前后检查的要求提出任何解决方案。

答案1

我不知道 Solaris 是否有它,如果有它的行为如何,但在 linuxsort命令上工作。

您可以使用sort这样的命令:

# With ps --sort
ps U $USER -o comm,pid --sort pid | head -n1
systemd 2120

# With sort cmd
ps U $USER -o comm,pid | sort -k2 | head -n1
systemd 2120

在我的linux机器上它可以工作。

我无法在Solaris上测试

相关内容