如何在Linux上通过FTP递归下载文件夹
我试图使用命令行ftp客户端来ftp文件夹,但到目前为止,我只能使用'get'来获取单个文件。
你可以依赖通常处理ftp的wget(至少在我自己的经验中)。 例如:
wget -r ftp://user:pass@server.com/
  您也可以使用适合镜像的-m 。  它目前等价于-r -N -l inf 。 
  如果凭证详细信息中包含一些特殊字符,则可以指定--user和--password参数以使其起作用。  具有特定字符的自定义登录示例: 
wget -r --user="user@login" --password="Pa$$wo|^D" ftp://server.com/
  编辑正如@asmaier指出的那样,注意即使-r是递归,它的默认最高级别为5: 
       -r
       --recursive
           Turn on recursive retrieving.
       -l depth
       --level=depth
           Specify recursion maximum depth level depth.  The default maximum depth is 5.
  如果你不想错过子目录,最好使用镜像选项-m : 
       -m
       --mirror
           Turn on options suitable for mirroring.  This option turns on recursion and time-stamping, sets infinite
           recursion depth and keeps FTP directory listings.  It is currently equivalent to -r -N -l inf
           --no-remove-listing.
只是为了补充ThibautBarrère给出的答案。
我用了
wget -r -nH --cut-dirs=5 -nc ftp://user:pass@server//absolute/path/to/directory
请注意服务器名称后面的双斜线。 如果我没有额外的斜杠,路径是相对于用户的主目录。
ncftp -u <user> -p <pass> <server>
ncftp> mget directory
                        链接地址: http://www.djcxy.com/p/78113.html
                        
                        
                    