使用bash下载文件问题

时间:2017-05-06 19:29:01

标签: bash shell unix cron crontab

我知道如何连接到SFTP服务器并从文件服务器目录中轮询文件。

$sshpass -p password sftp username@X.X.X.X:/Files/2017-05-05-00.zip  ~/local_machine/2017-05-05/

文件服务器每小时更新/File目录上的文件。

示例,

文件服务器将当天7:00 AM的第一个zip文件(例如:2017-05-05)添加为2017-05-05-00.zip

'8:00 AM'的第二个文件为2017-05-05-01.zip

像这样,24个文件将在一天内更新。

当天的最后一个文件是2017-05-05-23.zip

现在,我也知道如何下载一天的所有文件,我将在第二天下载(例如:2017-05-05文件,我将在第二天下载2017-05-06)

#download.sh
sshpass -p password sftp username@X.X.X.X:/Files/2017-05-05-00.zip  ~/local_machine/2017-05-05/
sshpass -p password sftp username@X.X.X.X:/Files/2017-05-05-01.zip  ~/local_machine/2017-05-05/
sshpass -p password sftp username@X.X.X.X:/Files/2017-05-05-02.zip  ~/local_machine/2017-05-05/
.................................................................
sshpass -p password sftp username@X.X.X.X:/Files/2017-05-05-23.zip  ~/local_machine/2017-05-05

我不想一下子全部下载,而是每小时下载一次。喜欢,

2017-05-05-00.zip   7:00
2017-05-05-01.zip   8:00
2017-05-05-02.zip   9:00
2017-05-05-03.zip   10:00
2017-05-05-04.zip   11:00
2017-05-05-05.zip   12:00
2017-05-05-06.zip   13:00
2017-05-05-07.zip   14:00
2017-05-05-08.zip   15:00
2017-05-05-09.zip   16:00
2017-05-05-10.zip   17:00
2017-05-05-11.zip   18:00
2017-05-05-12.zip   19:00
2017-05-05-13.zip   20:00
2017-05-05-14.zip   21:00
2017-05-05-15.zip   22:00
2017-05-05-16.zip   23:00
2017-05-05-17.zip   0:00
2017-05-05-18.zip   1:00
2017-05-05-19.zip   2:00
2017-05-05-20.zip   3:00
2017-05-05-21.zip   4:00
2017-05-05-22.zip   5:00
2017-05-05-23.zip   6:00

我知道可能会出现一个问题吗?

即使在第二天之后,文件名如何保持不变。

即使在第二天(2017-05-06),文件名仍保持不变,直到完成前一天的最后一个文件(2017-05-05-23.zip)。

如何自动安排下载文件的指定时间,而不是一次下载所有文件。

对如何在这里使用逻辑感到困惑。有什么建议吗?

0 个答案:

没有答案