最近使用BaiduPCS-Web时,勾了一堆东西在后台下载,却正好遇到关闭网页后下载任务丢失的问题。本想着在程序的stdout中还能看到下载进度,可事情就悲催在…
明明启动BaiduPCS的脚本中是nohup后台运行,可搜索了一圈居然没有找到nohup.out文件
目前需要做的是先确定下载进度,待下载进度结束后打算修改启动脚本将输出重定向到固定的日志文件中并重启程序。感谢万能的google,在一篇博客中看到了 strace 这个工具,从效果来看它像是劫持了对应进程的系统调用,使得我们可以记录下每次系统调用的详细参数,具体介绍可以看这里。
可以直接这么用:
strace -ewrite -p $PID
或
strace -ewrite -p $PID 2>&1 | grep ‘write(1,’
效果如下:
虽然汉字都成了字符编码,不过起码还能看出来是否还有下载任务在继续 …
参考:
https://lutao.me/cloud/sync/2017/03/10/strace-log-for-started-process.html
https://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/strace.html