检查分叉进程的状态?
Check status of a forked process?
我正在 运行宁宁一个过程,乐观地说,需要几个小时,在最坏的情况下,可能需要几天。
我已经尝试了几次 运行 它似乎从未完成(我应该补充一点,我没有编写程序,它只是一个大数据集)。我知道我的命令语法是正确的,因为我一直将它用于较小的数据并且它工作正常(我会为你省去细节,因为它对 SO 来说是模糊的,我认为这与问题无关)。
因此,我想让程序无人看管 运行宁作为 &
的一个分支。
现在,我不完全确定该过程是逐渐停止还是 运行 正在但花费的时间比预期的要长得多。
除了 ps
和 top
+ 1
(检查 CPU 使用)之外,还有什么方法可以检查进程的进度。
我唯一的其他想法是让进程输出日志文件并定期检查日志文件是否在 size/content 中增长。
作为侧边栏,是否有必要将 nohup
与分叉命令一起使用?
为此,我会使用 screen
。请参阅 man 以获取更多参考
简单总结使用方法:
screen -S some_session_name
- 启动一个名为 session_name
的新屏幕 session
Ctrl
+ a
+ d
- 分离 session
screen -r some_session_name
returns你对你的session
我正在 运行宁宁一个过程,乐观地说,需要几个小时,在最坏的情况下,可能需要几天。
我已经尝试了几次 运行 它似乎从未完成(我应该补充一点,我没有编写程序,它只是一个大数据集)。我知道我的命令语法是正确的,因为我一直将它用于较小的数据并且它工作正常(我会为你省去细节,因为它对 SO 来说是模糊的,我认为这与问题无关)。
因此,我想让程序无人看管 运行宁作为 &
的一个分支。
现在,我不完全确定该过程是逐渐停止还是 运行 正在但花费的时间比预期的要长得多。
除了 ps
和 top
+ 1
(检查 CPU 使用)之外,还有什么方法可以检查进程的进度。
我唯一的其他想法是让进程输出日志文件并定期检查日志文件是否在 size/content 中增长。
作为侧边栏,是否有必要将 nohup
与分叉命令一起使用?
为此,我会使用 screen
。请参阅 man 以获取更多参考
简单总结使用方法:
screen -S some_session_name
- 启动一个名为 session_name
Ctrl
+ a
+ d
- 分离 session
screen -r some_session_name
returns你对你的session