Linux中将代码nohup后台执⾏、查看正在运⾏代码、结束进程
Linux中将代码nohup后台执⾏、查看正在运⾏代码、结束进程
在服务器上跑代码时,直接在命令⾏运⾏代码,常常遇到代码还没跑完却因为⽹络不稳定等异常终⽌的问题,所以可以通过nohup指令将代码后台执⾏,也便于同时运⾏多个程序。
nohup后台执⾏,忽略输⼊并将输出保存到指定⽂件
nohup python myfile.py >> myresult1.out &
其中,myfile.py为需要运⾏的程序,myresult.out为输出⽂件,myresult.out默认与.py⽂件保存在同⼀路径下。
python指令也可以换成其他程序执⾏指令来运⾏其他语⾔的程序,其余不变
执⾏后会在当前路径⽣成⼀个.out⽂件
nohup后台执⾏py⽂件,并将执⾏的正常⽇志和错误⽇志都输⼊到myresult2.out中
nohup python -u myfile.py >>myresult2.out 2>&1&
myfile.py >>myresult2.out 是指定标准输⼊的输出⽂件
2>&1 是指将执⾏的错误⽇志 重定向到标准输出,因为标准输出是指向⽂件
myresult2.out,由于重定向,所以2代表的错误⽇志也会输出到这个⽂件中(0:标准输⼊流 stdin;1:标准输出流 stdout;2:标准错误流 stderr)
nohup XXX & 固定的后台执⾏的格式
grep命令查看进程
查看当前python相关进程
Linux可以通过ps指令相关参数查看各种进程,但查看所有进程往往等于⼤海捞针,所以查看python相关进程在运⾏代码时更为实⽤ps -ef |grep python
下图为我的执⾏结果
可以看到我当前有两个程序正在运⾏,进程号分别为16620和17575
结束进程
如果不想某个程序继续执⾏了,可以结束进程
kill -9 <;进程号>
例如,上图中我想停⽌执⾏16620的main_forCT.py,则输⼊
kill -9 16620
最后,如果做DL实验调参也不要为了节省时间开很多进程⼀起运⾏哦,显存⼤概会炸掉的:)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。