退出Shell后,后台作业会怎样?
从我的理解,工作是管道从某一个shell启动的,你可以管理这些作业(fg,bg,按Ctrl-Z)从该壳体内。一个作业可以包含多个进程/命令。 我的问题是,当包含外壳的原始外壳退出时,这些作业会发生什么?假设未设置huponexit,因此退出shell后后台进程继续运行。 假设我已经完成: $ run.sh | grep 'abc' & [1] job_id 然后我退出这个外壳。我将输入一个新的shell并运行jobs,显然看不到任何内容。但是我可以做ps aux | grep run.sh并看到此过程正在运行,并且我也将ps aux | grep grep看到并grep 'abc'正在运行该过程。 有没有一种方法可以获取完整管道的作业ID,以便我可以一口气杀死它,或者一旦退出原始Shell,是否必须与另一个Shell分别杀死所有进程?(我已经尝试了后者,但它确实有效,但是跟踪所有过程似乎很麻烦。)