小编典典

在 ssh 会话上批量下载

all

我需要通过 python 脚本从 sentinel2 下载一些卫星图像。我已经在本地对少量文件进行了测试,并且脚本可以正常工作。现在我应该在 ssh 会话上运行这个脚本。我的问题是,即使我关闭了 ssh 连接,如何让脚本继续运行(下载)?在后台启动脚本是否足够 ( python3 main.py &) ?


阅读 63

收藏
2022-07-01

共1个答案

小编典典

像这样的工作有很多工具:例如检查这个线程

你可以从screen.

$ screen  # initiates a screen session

在屏幕会话中,执行以下操作:

$ python my_scripts.py

Ctrl-A当脚本运行时,您可以使用+与屏幕会话分离D

该脚本将在“后台”运行,您可以离开当前的 ssh 会话。

对于批量下载,您可以拍摄多个屏幕会话。您可以在启动会话时为每个屏幕指定一个名称。通过这种方式,您可以运行多个脚本,每个会话中一个。

要检查打开的会话:

$ screen -ls
There are screens on:
    96185.pts-5.xxxxx-xxxx-xxx-xx   (2022年07月01日 17时39分06秒) (Detached)
    95231.pts-5.xxxxx-xxxx-xxx-xx   (2022年07月01日 17时20分40秒) (Detached)

并重新附加到特定会话:

$ screen -r 96185

但在您执行所有这些操作之前,您可能需要检查是否有足够的资源(磁盘空间、带宽等)。

2022-07-01