& 、nohup 不中断后台执行

本文介绍了如何使用&符号将命令置于后台并执行,以及nohup解决终端关闭问题。通过nohup和jobs命令管理后台任务,确保程序在终端关闭后仍能继续运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

& 后台执行符号

当一个前台命令执行时,会一直占用着前台终端,想要把命令放到后台去运行,可以使用&符合,使用方法很简单,如下:

前台命令 &

即在命令后面加&即可,这样程序或命令就会被放到后台执行了,ps -ef | grep xxx ,就可以查看进程,需要终止程序就kill即可。

演示示例:

[root@master ~]# sh /root/inotifywait_rsync.s					#因为这个程序是一个while程序,所以程序会一直占用终端前台界面


[root@master ~]# sh /root/inotifywait_rsync.s	&				#程序就被放到后台执行了
[1] 21386
[root@master ~]#

说明:虽然&符合可以把程序就被放到后台执行了,但一旦终端窗口被关闭,程序也就立即被关闭了。

nohup命令

为了解决终端窗口被关闭,后台执行的程序也就立即被关闭的问题,我们使用nohup命令与&后台执行符号结合起来使用, nohup 是 no hang up 的缩写,就是不挂断的意思,其语法格式如下:

nohup 命令 &

演示示例:

[root@master ~]# nohup /bin/sh /root/inotifywait_rsync.sh  &			#nohup结合&后台运行符号使用,即使终端窗口关闭程序也不会被终断
[1] 21688
[root@master ~]# nohup: ignoring input and appending output to ‘nohup.out’

[root@master ~]# 

扩展jobs命令

使用jobs命令来查看有哪些后台运行的程序,如下实例所示:

[root@master ~]# jobs
[1]+  Running                 nohup /bin/sh /root/inotifywait_rsync.sh &
[root@master ~]# 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值