在 CentOS 中,当你通过 SSH 连接到服务器并运行一个命令时,如果 SSH 连接断开,该命令通常会被终止。为了避免这种情况,你可以使用 nohup 命令来使进程忽略挂起(SIGHUP)信号,从而在 SSH 断开后继续运行。
以下是如何使用 nohup 的步骤:
使用 nohup 运行命令: 在终端中输入以下命令来运行你的程序,并将其输出重定向到一个文件(例如 output.log):
nohup your_command > output.log 2>&1 & 解释:
nohup:使进程忽略挂起信号。your_command:你想要运行的命令。> output.log:将标准输出重定向到 output.log 文件。2>&1:将标准错误输出重定向到标准输出,这样错误信息也会被写入 output.log。&:将命令放入后台运行。查看输出: 你可以随时查看 output.log 文件来检查命令的输出:
tail -f output.log 查找进程: 如果你想查找由 nohup 启动的进程的 PID(进程 ID),可以使用以下命令:
ps aux | grep your_command 这将显示所有包含 your_command 的进程,你可以从中找到对应的 PID。
终止进程: 如果你需要终止由 nohup 启动的进程,可以使用 kill 命令:
kill -9 PID 其中 PID 是你找到的进程 ID。
通过这些步骤,你可以在 SSH 断开连接后继续运行命令,并且可以随时查看和管理这些进程。