Linux中的后台运行

1.在下达的命令后面加上&,就可以使该命令在后台进行工作,这样做最大的好处就是不怕被ctrl+c这个中断指令所中断。

2.现在已经在前台运行的命令,可以通过执行ctrl+z放置到后台,不过命令会被暂停

3.如果有多个进程在后台运行,可以通过jobs这个命令列出所有在后台执行的进程,中括号([ ])里面的数字就是 jobs 的代号,切记,这里是job的代号,不是pid,若要看pid,则可以使用jobs -l。[]后面“+”表示当前的作业,“-”表示当前作业的下一个作业。job的状态可以是running,stopped,terminated。获得job号后,可以通过“fg %jobid”将后台job调到前台执行,而“bg %jobid”则可将刮起的job的状态由stopped改为running,仍在后台运行;

4.一般来说,以“&”结束的命令会在后台运行,但是当只想该命令的终端退出时,该命令也会终止,这时就该使用nohup命令了,如我们需要执行一个test.sh,可以通过"nohup test.sh"就可以了,这里注意执行后要按任意键回到当前终端,否则不能让命令在后台运行。

5.当用户启动一个进程的时候,这个进程是运行在前台,使用与相应控制终端相联系的标准输入、输出进行输 入和输出。即使将进程的输入输出重定向,并将进程放在后台执行,进程仍然和当前终端设备有关系。正因为如此,在当前的登录会话结束时,控制终端设备将和登录进程相脱离,那么系统就向所有与这个终端相联系的进程发送SIGHUP的信号,通知进程线路已经挂起了,如果程序没有接管这个信号的处理,那么缺省的反应是进程结束。因此普通的程序并不能真正脱离登录会话而运行进程,为了使得在系统登录后还可以正常执行,只有使用命令nohup来启动相应程序。使用命令nohup当然可以启动这样的程序,但nohup启动的程序在进程执行完毕就退出,而常见的 一些服务进程通常永久的运行在后台,不向屏幕输出结果。在Unix中这些永久的后台进程称为守护进程(daemon)。守护进程通常从系统启动时自动开始 执行,系统关闭时才停止。

6.另外还可以通过crontab进行后台运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值