nohup指令让工程文件可以在后台运行而不受shell关闭连接的影响

33 篇文章 0 订阅
17 篇文章 0 订阅

前言

当我们跑任务的时候,往往时间非常久,如果此时出了某些问题,导致shell关闭了连接,那等于之前训练会中断,如果代码中没有保存的功能,则直接训练的都没有用了。使用nohup指令就是为了让工程.py文件在后台运行,而不受shell断开连接的影响

nohup使用

nohup,英文是no hang up的缩写,即不要挂断。
我们通过建立一个小的文件来测试:

vim test.py # 创建文件
import time
x = 0
while x>=0:
	print(x)
	time.sleep(1)
	x+=1

上面文件是每隔一秒,x加一然后print出来,如果不挂断,应该是一直输出的。

来测试一下:

先在一个终端中输入

nohup python -u test.py &

此时会出现一个id,这个id即代表当前的后台运行程序id,可以通过kill进行杀死kill -9 id
如果仅仅是将这个终端关掉,是无法关闭这个正在运行的程序/脚本的。

然后换另外一个终端,来到之前的文件位置,使用:

tail -f nohup.out

这里的nohup.out文件,是使用nohup指令自动在当前目录产生的文件,通过上面这个命令,可以重新看到这个程序/脚本运行的样子

那如果忘记了之前的id了呢,该如何杀死进程?

ps ax | grep test.py 

通过上面指令,可以输出这个程序/脚本的id,此时再使用kill杀死即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值