使用shell脚本从ftp下载 - 查找所有子文件夹

时间:2015-03-31 11:25:08

标签: shell loops download ftp

我想使用shell脚本从ftp下载多个文件。到目前为止,我总是将所有文件放在一个文件夹“/ data”中。我用过这个脚本:

#!/bin/sh
HOST='abc.de'
USER='abc'
PASSWD='abc'
FILE='*.txt'
LOCDIR='/athome/abc/'
PATH='data/'

/usr/bin/ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
lcd $LOCDIR
prompt off
binary
ls
cd $PATH
mget $FILE
quit
END_SCRIPT
exit 0

现在我在文件夹/ data

中有多个子文件夹
/data
   /subfolder 1
      /file1
      /file2
   /subfolder 2
      /file1
      /file2
      /file3
...

如何在循环中浏览所有这些文件夹以下载包含的文件?

谢谢!

2 个答案:

答案 0 :(得分:2)

使用wget代替下面的mget

wget -r 'ftp://user:pass@abc.de/data'

用户= ABC 通过= ABC 为你的情况

答案 1 :(得分:0)

只需查看https://github.com/thomasX/ftpBackup

上的脚本即可

使用此功能,您可以从ftp下载多个文件夹