比较运行bash前后的进程列表
尝试在运行bash测试脚本之前和之后比较进程列表。有问题,因为ps返回1,我不知道如何比较之前和之后,当我有他们 理想情况下,它看起来像这样。请原谅粗糙的伪代码:比较运行bash前后的进程列表,bash,makefile,ps,Bash,Makefile,Ps,尝试在运行bash测试脚本之前和之后比较进程列表。有问题,因为ps返回1,我不知道如何比较之前和之后,当我有他们 理想情况下,它看起来像这样。请原谅粗糙的伪代码: run-tests: ps -x export before=$? # run tests and scripts ps -x export after=$? # compare before and after 建议和建议,不胜感激 我假设您想计算前后运行进程的数量(您的问题对此
run-tests:
ps -x
export before=$?
# run tests and scripts
ps -x
export after=$?
# compare before and after
建议和建议,不胜感激 我假设您想计算前后运行进程的数量(您的问题对此不是很清楚)。如果是这样,您可以将ps导入wc:
export before=`ps --no-headers | wc -l`
--编辑---
我重读了这个问题,你可能在寻找不同的实际过程。如果是这种情况,那么您可以捕获变量中的输出,并比较它们:
target:
@ before=$$(ps --no-headers); \
run test; \
after=$$(ps --no-headers); \
echo "differing processes:"; \
comm -3 <(echo "$before") <(echo "$after")
目标:
@before=$$(ps—无标题)\
运行测试\
after=$$(ps—无标题)\
回应“不同的过程:”\
comm-3将ps的输出通过awk传输,以返回一个退出代码。当你说比较它们时,你的意思是测试它们是否相等,或者执行其他一些自动分析,或者将它们都显示在屏幕上,或者做什么?