![停止会话几分钟后进程树的差异](https://linux22.com/image/135555/%E5%81%9C%E6%AD%A2%E4%BC%9A%E8%AF%9D%E5%87%A0%E5%88%86%E9%92%9F%E5%90%8E%E8%BF%9B%E7%A8%8B%E6%A0%91%E7%9A%84%E5%B7%AE%E5%BC%82.png)
使用该命令停止执行会话 3 分钟
sleep
,并显示进程树中的差异(+
新进程的符号和-
已消失的进程的符号)。
如何为此练习编写脚本?
答案1
#!/bin/sh
ps aux >ps-out.old
sleep 180
ps aux >ps-out.new
diff -u ps-out.old ps-out.new | grep '^[+-]'
这将执行ps aux
并将结果保存到文件中。然后它等待三分钟,然后再次执行相同的操作。然后它用于diff
获取 的两组输出之间的差异ps
,并且仅获取输出中已添加或删除的grep
行。diff