我正在使用ssh
连接到另一台(更快的)计算机,以便在那里运行一些python代码。由于我希望它可以运行几个小时,因此我想在运行后断开连接,如下所示:
$ ssh user@my-other-computer
$ python file.py &
$ exit
但是,如果尝试此操作,则会收到消息:
zsh: you have running jobs.
我尝试使用nohup
:
$ nohup nice python file.py &
但无济于事。
我如何实现我的目标?
我不知道为什么nohup
不起作用(也许由于nice
,它可以在没有nice
命令的情况下起作用),但是还有其他选择:
screen
创建一个未绑定到您的会话的新终端(您可以先使用screen -d
或Contr+A
然后再使用:detach
分离屏幕会话,然后再使用screen -r
附加到它)。您可以使用screen python file.py
tmux
是终端多路复用器。它就像屏幕,但具有更多功能且速度更快。您可以使用tmux
打开一个tmux会话,然后在新创建的会话中运行python file.py
。您可以使用Contr+B
和d
或tmux detach-client
进行分离。
[disown
是一个shell命令,您可以从当前shell中取消所有作业关闭该作业,这些作业将保持运行状态。