【问题标题】:Let code run after logout让代码在注销后运行
【发布时间】:2018-02-27 13:33:55
【问题描述】:

我有一个很长的代码,可以从文件中提取数据,将其存储在字典中,然后将其插入到 mysql 表中。我需要在一个包含近 1000 个文件的文件夹中循环,这需要几个小时。我看到了很多相互矛盾的建议,不确定哪个是最简单和最安全的。即使我在计算机上注销我的用户(这意味着终端将被退出),是否有我可以运行的命令让代码继续运行?我还没有开始运行它。

【问题讨论】:

  • 这个问题已经在 SuperUser 上asked。不知道是否值得迁移只是为了被关闭作为骗子。

标签: python mysql python-2.7 mysql-python nohup


【解决方案1】:

听起来您的代码当前像./ingest-data.py 一样运行,所以最简单的选择是前缀nohup(no-hangup 的缩写)。

nohup ./ingest-data.py

如果您的 shell 丢失,要保存调试输出,您需要将 nohup 输出重定向到文件。 Gnu Bash Redirection manual 有更多详细信息。

nohup ./ingest-data.py >output 2>&1 &

或者,终端多路复用器(如tmuxbyobu)可以手动分离和重新连接,但如果外壳连接断开,也会继续存在。如果您在终端上花费大量时间,那么您可能会对其他功能感兴趣,因此请查看一些文章和视频以了解您的兴趣。

第三个选项是使用 X2Go 或 NoMachine 分离/重新连接桌面,但可能需要比当前项目更多的调整。

nohup 开始,如果您愿意,请移至其他工具。

【讨论】:

    【解决方案2】:

    您可以在screentmux 上运行您的代码。

    【讨论】:

      猜你喜欢
      • 2018-02-08
      • 2021-10-15
      • 2016-12-14
      • 2017-06-23
      • 1970-01-01
      • 2021-07-06
      • 2010-11-02
      • 2013-02-18
      • 1970-01-01
      相关资源
      最近更新 更多