在 Linux 中,nohup 命令用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行。以下是如何使用 nohup 命令来运行 C++ 程序的步骤:
编译 C++ 程序:
首先,确保你的 C++ 程序已经编译成功。假设你的源文件名为 program.cpp,可以使用以下命令进行编译:
g++ -o program program.cpp
这将生成一个名为 program 的可执行文件。
使用 nohup 运行程序:
使用 nohup 命令来运行编译后的程序,并将输出重定向到一个文件中。例如:
nohup ./program > output.log 2>&1 &
解释:
nohup:表示“no hang up”,即使关闭终端,程序也会继续运行。./program:要运行的可执行文件。> output.log:将标准输出重定向到 output.log 文件。2>&1:将标准错误输出重定向到标准输出,这样错误信息也会写入 output.log 文件。&:将命令放入后台运行。查看输出:
程序运行后,输出会被写入 output.log 文件。你可以使用以下命令查看输出:
tail -f output.log
这将实时显示 output.log 文件的最新内容。
停止后台进程:
如果你需要停止后台运行的程序,可以使用 ps 命令找到进程 ID(PID),然后使用 kill 命令终止进程。例如:
ps aux | grep program
这将列出所有名为 program 的进程。找到对应的 PID 后,使用以下命令终止进程:
kill -9 PID
其中 PID 是你要终止的进程的进程 ID。
通过以上步骤,你可以在 Linux 中使用 nohup 命令在后台运行 C++ 程序,并确保程序在关闭终端后继续运行。