Linux Shell下后台运行及其前台的转换

来源:互联网 发布:js重定向url 编辑:程序博客网 时间:2024/05/16 09:20
当用bash启动一个程序,你可以用在程序后加&,实现程序在后台运行;

例如: emacs &

但如果你忘了输入&;但你又不想把程序停止后重新启动;
你可以这么做:


按Ctrl + Z暂停前台工作,比如前面提到的Emacs

然后用jobs命令查看当前bash一共启动了多少程序,你可以看到你的emacs在其中,它的状态是Stoped的; 并且它的jobID也可以看,比如是2

然后用命令bg 2;


这样你就可以达到和emacs &一样的效果了。

当你有些工作比如updatedb, find等需要一定时间,这些工作可以考虑让它在后台运行,而你可以用bash做其它工作。

如果需要把任务回到前台,只需要fg 2.


当你需要结束后台程序时

ps aux|grep 找到你的后台程序

kill -4,如果还不行就kill -9

这次再用jobs和bg命令查看,就没有之前的后台程序了