如何暂停/恢复Python脚本?

时间:2013-10-26 00:50:50

标签: macos python-2.7 resume

我在macbook air上运行python脚本,处理来自外部API的数据,通常需要几个小时或偶尔几天。

然而,有时我需要在运行脚本的过程中暂停我的笔记本电脑,以便我可以去上班或回家或类似。

如何在for循环中间暂停/恢复这些脚本?

是否有一些非常简单的东西,我可以在脚本级别添加,只是监听特定的键击以停止/启动?或者我可以在* nix流程管理级别做些什么?

我很清楚Pickle但我宁愿不处理序列化/反序列化数据的麻烦 - 因为我正在做的就是休眠mac,我希望如果脚本暂停,然后我休眠,OS X将处理将RAM保存到磁盘,然后当我重新打开计算机时恢复到RAM。那时,我可以点击一个简单的按键继续python脚本。

由于我在不同的wifi网络之间切换,因此当我的脚本尝试访问互联网以访问第三方API时,不确定不同的IP是否会导致问题。

1 个答案:

答案 0 :(得分:9)

这最初是一个评论,但它似乎是OP想要的,所以我将它作为答案重新发布

我会使用 ctrl + z 来暂停您正常运行的进程。这将为您留下一个PID,稍后您可以通过拨打fg fg <job-number>来恢复该身份。 这不应该对改变的网络设置(如IP等)产生任何影响,至少就python而言。虽然

,但我无法谈论API是否会出类拔萃