Linux实现前后台切换的命令

描述

Shell支持作用控制,有以下命令实现前后台切换:

  1. command& 让进程在后台运行

  2. jobs 查看后台运行的进程

  3. fg %n 让后台运行的进程n到前台来

  4. bg %n 让进程n到后台去

       5. kill %n 杀死job

  PS:"n"为jobs命令查看到的job编号,不是进程编号.

  fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的.

一、& 最经常被用到
  这个用在一个命令的最后,可以把这个命令放到后台执行

二、ctrl + z
  可以将一个正在前台执行的命令放到后台,并且暂停

三、jobs
  查看当前有多少在后台运行的命令

四、fg
  将后台中的命令调至前台继续运行
  如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)。

五、bg
  将一个在后台暂停的命令,变成继续执行
  如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)。

实例:
       假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,终止这个程序,然后可以看到系统提示:

[1]+ Stopped /root/bin/rsync.sh

 

如果没有此提示,则用 jobs 命令查看任务:

#jobs
[1]+ suspended /root/bin/rsync.sh &

 

然后我们可以把程序调度到后台执行:(bg 后面的数字为作业号)

#bg 1
[1]+ /root/bin/rsync.sh &

 

用 jobs 命令查看正在运行的任务:

#jobs
[1]+ Running /root/bin/rsync.sh &

 

如果想把它调回到前台运行,可以用

#fg 1
/root/bin/rsync.sh

 

这样,你在控制台上就只能等待这个任务完成了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分