Linux下后台运行程序及终止程序
这里使用系统为CentOS 7
在有些情况下,我们远程连接云服务器,执行程序后,希望在关闭窗口后,程序依然可以在后台运行。
这里就介绍一种简单的方法:
nohup是no hang up的缩写,就是不挂断的意思。如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。在缺省情况下该程序的所有输出都被重定向到一个名为nohup.out的文件中。
要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。命令如下:
nohup 执行程序的命令 &
如果执行时出现了 nohup: ignoring input and appending output to ‘nohup.out’ 错误。
是因为没有权限。我们可以切换到管理员权限,然后在命令前面加上"sudo",比如,我们执行一个java打包成jar的程序
nohup java -jar demo.jar > nohup.out 2>&1 &
终止程序之前,我们先要知道我们要终止程序进程的PID号,可以使用如下命令查询:
ps -aux
然后使用kill命令,杀死进程
kill -9 PID号