今天在调试程序的时候发现找不到进程pid,用grep查找python进程的时候,发现有很多重名的,不知道该杀死哪一个,这里可以在用nohup的时候同时把pid输出到文件里面,这样就方便操作进程了,我的命令为:
nohup python3 -u train.py > output2.log 2>&1 & echo $! > run.pid
这个运行完以后,训练的日志会输出到output2.log中,而进程的id就会输出到run.pid中,亲测可用。
后面如果想停止该程序,就可以直接在run.pid文件里面找到pid,然后用下面的命令:
kill -9 your_pid
就可以终止程序了
参考文献
[1]. How to run nohup and write its pid file in a single bash statement. https://stackoverflow.com/questions/20254155/how-to-run-nohup-and-write-its-pid-file-in-a-single-bash-statement
[2].如何获取进程ID杀死一个nohup的过程?(How to get the process ID to kill a nohup process?). https://www.it1352.com/321596.html