概要
简介
语法规则
语法示例
其他
概要
应用场景:nohup非常适合用来执行一些需要长时间运行的脚本或程序,比如Web服务器,数据库,训练深度学习模型等,当关闭终端或退出,进程也随之关闭。但需要注意的是,nohup命令并不是完全避免了进程被中断的可能,例如系统崩溃、进程错误等情况仍可能导致进程的中断。
作用:可以在Linux下永久的在后台执行程序,不受终端关闭的影响。
简介
1.nohup是Linux和Unix系统中的一个命令,其作用是在终端退出时,让进程在后台继续运行。
2.nohup:no hang up 的缩写,“不挂断”的意思
3.nohup命令可以让你在退出终端或关闭SSH连接后继续运行命令。
4.后台运行用 & ,nohup与&结合使用,实现不挂断的后台运行。
语法规则
nohup command > outfile.txt 2> error.txt &
command:想要后台不挂断执行的命令“> outfile.txt”:将标准输出重定向到 outfile.txt文件(python脚本中的print输出内容就会保存在该文件中)“2>” :错误信息重定向。“2> error.txt”:将程序运行报错信息输出到error.txt中&:实现后台运行 语法示例
1.nohup python dataprocess.py &
将python dataprocess.py任务放到后台,但是依然可以使用标准输入,终端能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行。
2.nohup bash test.sh > stdout.txt &
在后台运行bash脚本,并将标准输出重定向到stdout.txt文件
3.nohup python test.py 2> stderr.txt &
后台运行python脚本,并将标准错误重定向到stderr.txt文件
4.nohup bash test.sh > output.txt 2>&1 &
后台运行bash脚本,并将标准输出和标准错误重定向到同一个文件中,即都重定向到output.txt文件中
5.nohup python test.py > stdout.txt 2> stderr.txt &
后台运行python脚本,并将标准输出和标准错误重定向到不同文件中
其他
1.查看是否有进程在运行nvidia-smi
上图中的PID就是进程号,即上图中正在执行的进程的进程号为1196102
2.终止进程kill -9 进程号
如kill -9 1196102
再使用命令nvidia-smi
查看进程是否被成功终止。