工作管理?
其实也就是把程序放到后台来管理,在windows中也就是最小化,在Linux中是通过命令把程序放到后台中。jobs命令查看后台程序。
对于第一点注意事项,mysql启动是例外的,要是叉掉了启动mysql的终端,mysql服务还是在启动中
第二点:一些回车就完成的命令就不要放到后台了。
第三点:比如vi,vi是用来编辑的,所以放入后台了就没有什么意义了。
工作管理的方法
1、在命令后加&
2、按下ctrl+z
第一个放入后台的jobs是通过&放入的,第二个是通过ctrl+z放入的,但是为什么&放入后台的程序是停止的呢?---因为top命令是与前台交互的,其结果就是给前台用户看的,那放入后台后肯定是暂停的。
查看后台的工作
find命令的结果也是给前台用户看的,那为什么可以放入后台呢?---因为find命令回车之后就在运行最后输出结果,中途不需要人为干涉。
find在后台的状态:running-Done-消失
将后台暂停的 工作恢复到前台执行
将后台暂停的工作放到后台执行
若bg/fg后面没加工作号,则表示对带有+号的工作的操作。
后台命令脱离终端
若关闭当前终端,系统会发送一个SIGHUP的信号,将该终端中所有执行的命令终止掉。
关闭终端后命令不会终止的最典型的命令是mysql。
以上将mysql服务放到后台,若是关闭了该终端,这个命令也会一直进行。因为将mysql启动为了守护进程(msyqld中的d)。但是若想把后台命令脱离终端的话不能把所有的命令都变成守护进程,这样很复杂,Linux的守护进程太多不好管理且系统速度会越来越慢。
方法:
系统每次启动都会运行/etc/rc.local
第二种方法不推荐使用,有时不会生效;第三种方法为标准用法;
例子: