使用Bash递归地从SFTP服务器下载文件
问题描述:
我给出了一个SFTP服务器IP ADDRESS |用户名|密码。每天,SFTP服务器可能会有一些“2016_11_02_1.zip”格式的N个拉链。我知道,如何使用cURL下载文件。现在使用Bash递归地从SFTP服务器下载文件
$curl -u xxxxx:xxxxx sftp://x.x.x.x/path/to/2016_11_02_1.zip
$curl -u xxxxx:xxxxx sftp://x.x.x.x/path/to/2016_11_02_2.zip
,我会写一个脚本下载SFTP服务器(2016_11_02_1.zip,2016_11_02_2.zip,2016_11_02_3.zip)可用的zip文件。几个小时后,可能会添加SFTP服务器2016_11_02_4.zip ..... 2016_11_02_30.zip.
如何下载文件而无需下载已下载的ZIP文件(2016_11_02_1.zip , 2016_11_02_2.zip , 2016_11_02_3.zip)
。
有什么建议吗?
答
如果通过SFTP指的是安全的FTP,您可以使用支持SSH的rsync(> = 3.X我认为),因为SFTP是SSH的一部分。例如:
rsync -av [email protected]:/path/to/`date +%Y`*
您可以通过ssh访问服务器吗?如果是这样,那么我会建议'rsync'。 – Cyrus
@Cyrus是的,我可以通过SSH访问。我也会看看rsync。 – Arun