Linux 后台任务 jobs bg fg


Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行。比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作;而一些服务型的命令进程我们则希望能把它们长期运行于后台。

进程前后台操作用到以下命令或按键:

Ctrl+C

终止并退出前台命令的执行,回到SHELL

Ctrl+Z

暂停前台命令的执行,将该进程放入后台,回到SHELL

jobs

查看当前在后台执行的命令,可查看命令进程号码

&

运行命令时,在命令末尾加上&可让命令在后台执行

fg N

将命令进程号码为N的命令进程放到前台执行,同%N

bg N

将命令进程号码为N的命令进程放到后台执行

以下是实际操作的演示:

Java代码

  1. [www.bkjia.com@linux ~]$ ping 88181.com -a >/dev/null &   
  2. [112879  
  3. [www.bkjia.com@linux ~]$ jobs   
  4. [1]+ Running ping 88181.com -a > /dev/null &   
  5. [www.bkjia.com@linux ~]$   
  6. [www.bkjia.com@linux ~]$ ping bkjia.com -a >/dev/null  
  7. #Ctrl+Z   
  8. [2]+ Stopped ping bkjia.com -a > /dev/null  
  9. [www.bkjia.com@linux ~]$ jobs   
  10. [1]- Running ping 88181.com -a > /dev/null &   
  11. [2]+ Stopped ping bkjia.com -a > /dev/null  
  12. [www.bkjia.com@linux ~]$   
  13. [www.bkjia.com@linux ~]$ fg 1  
  14. ping 88181.com -a > /dev/null  
  15. #Ctrl+Z   
  16. [1]+ Stopped ping 88181.com -a > /dev/null  
  17. [www.bkjia.com@linux ~]$ jobs   
  18. [1]+ Stopped ping 88181.com -a > /dev/null  
  19. [2]- Stopped ping bkjia.com -a > /dev/null  
  20. [www.bkjia.com@linux ~]$   
  21. [www.bkjia.com@linux ~]$ bg 2 织梦好,好织梦   
  22. [2]- ping bkjia.com -a > /dev/null &   
  23. [www.bkjia.com@linux ~]$ jobs   
  24. [1]+ Stopped ping 88181.com -a > /dev/null  
  25. [2]- Running ping bkjia.com -a > /dev/null &   
  26. [www.bkjia.com@linux ~]$   
  27. [www.bkjia.com@linux ~]$ %2  
  28. ping bkjia.com -a > /dev/null  
  29. #Ctrl+Z   
  30. [2]+ Stopped ping bkjia.com -a > /dev/null  
  31. [www.bkjia.com@linux ~]$ jobs   
  32. [1]- Stopped ping 88181.com -a > /dev/null  
  33. [2]+ Stopped ping bkjia.com -a > /dev/null  
  34. [www.bkjia.com@linux ~]$   
  35. [www.bkjia.com@linux ~]$  

相关内容