Cha*_* Ma 308 linux ftp command-line
我正在尝试使用命令行ftp client ftp文件夹,但到目前为止我只能使用'get'来获取单个文件.
Thi*_*ère 607
你可以依赖通常处理ftp的wget得到正确的(至少在我自己的经验中).例如:
wget -r ftp://user:pass@server.com/
Run Code Online (Sandbox Code Playgroud)
您也可以使用-m适合镜像的.它目前相当于-r -N -l inf.
如果您在凭据详细信息中有一些特殊字符,则可以指定--user和--password参数以使其起作用.使用特定字符的自定义登录示例:
wget -r --user="user@login" --password="Pa$$wo|^D" ftp://server.com/
Run Code Online (Sandbox Code Playgroud)
编辑
正如@asmaier指出的那样,注意即使-r是递归,它的默认最大级别为5:
Run Code Online (Sandbox Code Playgroud)-r --recursive Turn on recursive retrieving. -l depth --level=depth Specify recursion maximum depth level depth. The default maximum depth is 5.
如果您不想错过子目录,请更好地使用镜像选项-m:
Run Code Online (Sandbox Code Playgroud)-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.
Lud*_*uty 159
只是为了补充ThibautBarrère给出的答案.
我用了
wget -r -nH --cut-dirs=5 -nc ftp://user:pass@server//absolute/path/to/directory
Run Code Online (Sandbox Code Playgroud)
请注意服务器名称后面的双斜杠.如果我没有添加额外的斜杠,则路径相对于用户的主目录.
Vin*_*vic 25
ncftp -u <user> -p <pass> <server>
ncftp> mget directory
Run Code Online (Sandbox Code Playgroud)
Dil*_*war 21
如果lftp您的计算机上已安装,请使用mirror dir.你完成了.如果要递归下载目录,请参阅下面的Ciro注释.
Gre*_*ill 17
如果您可以使用scp而不是ftp,该-r选项将为您执行此操作.我会检查你是否可以使用比FTP更现代的文件传输机制.
请改用WGet.它支持HTTP和FTP协议.
wget -r ftp://mydomain.com/mystuff
Run Code Online (Sandbox Code Playgroud)
祝好运!
参考:http://linux.about.com/od/commands/l/blcmdl1_wget.htm
小智 7
有'ncftp'可以在linux中安装.这适用于FTP协议,可用于递归下载文件和文件夹.适用于Linux.已经使用并且正常用于递归文件夹/文件传输.
查看此链接... http://www.ncftp.com/
| 归档时间: |
|
| 查看次数: |
456548 次 |
| 最近记录: |