0

ssh用来连接到另一台(更快的)计算机,以便在那里运行一些 python 代码。正如我希望它运行几个小时一样,我想在运行后断开连接,如下所示:

$ ssh user@my-other-computer
$ python file.py &
$ exit 

但是,如果我尝试这样做,我会收到以下消息:

zsh: you have running jobs.

我尝试使用nohup

$ nohup nice python file.py &

但无济于事。

我怎样才能实现我的目标?

4

1 回答 1

1

我不知道为什么nohup不起作用(可能是因为nice,它可以在没有nice命令的情况下工作)但有其他选择:

  • screenscreen -d创建一个未绑定到您的会话的新终端(您可以使用或分离屏幕会话Contr+A,然后:detach使用 再次附加到它screen -r)。您可以使用运行命令screen python file.py

  • tmux是终端多路复用器。它类似于屏幕,但具有更多功能并且速度更快。您可以使用新创建的会话打开一个 tmux 会话tmuxpython file.py在其中运行。您可以使用Contr+Bandd或分离tmux detach-client

  • disown是一个 shell 命令,它拒绝当前 shell 中的所有作业,您可以关闭它并且作业将继续运行。

于 2019-12-09T05:45:25.410 回答