我怎么知道进程是在逗号“ ps”还是“ ps -ef”中运行背景或前景?
我首先想到,当我输入ps -ef时,会有一个名为TTY的部分。
当我查看TTY列表时,大多数都是'?' (问号)
我想知道问号是否意味着进程正在运行背景
我想检查我是否正确!
如果没有,我想知道如何知道进程是在后台还是在前台
ps。 commnand这里没有使用“工作”
答案 0 :(得分:0)
我喜欢这个问题,并且对于列出ps
有关后台作业/过程的信息有一个扭曲的解决方案。
通过作业/后台进程的定义。它们是使用jobs -l
命令的列表。
将后台作业pid存储在列表中
echo "$(jobs -l)" | awk '{print $2}' > jobs.lst
将作业列表与当前进程相交
ps -eo pid,args | grep -f jobs.lst
输出是ps -eo pid,args
个后台作业的结果。
提供后台作业的id和命令行参数。
PS
我使用了ps
输出选项-o
仅列出了pid
和args
。根据自己的喜好将其更改,但请确保pid
在其中。