Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何知道进程是在commans中运行后台还是前台;ps";或;ps-ef“是什么;?_Linux_Bash - Fatal编程技术网

Linux 如何知道进程是在commans中运行后台还是前台;ps";或;ps-ef“是什么;?

Linux 如何知道进程是在commans中运行后台还是前台;ps";或;ps-ef“是什么;?,linux,bash,Linux,Bash,我如何知道进程是在后台运行还是在前台运行,用逗号“ps”或“ps-ef” 我首先想到,当我输入ps-ef时,会有一个名为TTY的部分 当我查看TTY列表时,其中大多数是“?”(问号) 我想知道这个问号是否意味着进程正在后台运行 我想看看我是否正确 如果不是,我想知道如何知道进程是在后台运行还是在前台运行 这里不使用ps.command“jobs”我喜欢这个问题,并且有一个扭曲的解决方案来列出有关后台作业/流程的信息 根据作业/后台流程的定义。它们是带有作业-l命令的列表 将后台作业pid存储在列

我如何知道进程是在后台运行还是在前台运行,用逗号“ps”或“ps-ef”

我首先想到,当我输入ps-ef时,会有一个名为TTY的部分

当我查看TTY列表时,其中大多数是“?”(问号)

我想知道这个问号是否意味着进程正在后台运行

我想看看我是否正确

如果不是,我想知道如何知道进程是在后台运行还是在前台运行


这里不使用ps.command“jobs”

我喜欢这个问题,并且有一个扭曲的解决方案来列出有关后台作业/流程的信息

根据作业/后台流程的定义。它们是带有
作业-l
命令的列表

  • 将后台作业pid存储在列表中

    echo "$(jobs -l)" | awk '{print $2}' > jobs.lst
    
  • 将作业列表与当前进程相交

    ps -eo pid,args | grep -f jobs.lst
    
  • 输出为后台作业的
    ps-eo pid,args
    result

    为后台作业提供id和命令行参数

    p.S


    我使用
    ps
    输出选项
    -o
    仅列出
    pid
    args
    。根据您的喜好更改它,但确保
    pid
    在那里。

    这个问题更适合您。我相信在这里是正确的。我会更改标题。如何识别脚本中的后台进程。该栏高于在问题中添加“脚本中”。