nohup(no hang-up)是一个在Linux和Unix系统中用于在后台运行命令的实用程序,即使关闭终端或断开连接,它也会继续运行
ssh 用户名@服务器地址
nohup命令启动程序,并将输出重定向到一个日志文件。例如,如果你想在后台运行名为my_program的程序,并将输出保存到名为output.log的文件中,可以使用以下命令:nohup my_program > output.log 2>&1 &
这里,>表示将标准输出重定向到output.log文件,2>&1表示将标准错误重定向到标准输出(即output.log文件),最后的&表示在后台运行程序。
tail命令实时查看日志文件的内容:tail -f output.log
my_program命令前添加调试器(如gdb)和其他调试选项。例如:nohup gdb -ex "run" -ex "backtrace" my_program > output.log 2>&1 &
这里,gdb是GNU调试器,-ex "run"表示运行程序,-ex "backtrace"表示在程序崩溃时显示堆栈跟踪。其他调试选项可以根据需要进行调整。
如果需要查看程序的实时输出,可以使用tail -f output.log命令。如果程序崩溃或完成运行,可以在日志文件中查找相关信息。
调试完成后,可以使用kill命令终止在后台运行的程序:
kill 进程ID
其中,进程ID是程序在后台运行时的进程ID。可以使用ps命令查找进程ID:
ps aux | grep my_program
然后,根据查找到的进程ID,使用kill命令终止程序。