bash – 使用cURL下载目录中的所有文件

前端之家收集整理的这篇文章主要介绍了bash – 使用cURL下载目录中的所有文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用cURL尝试下载某个目录中的所有文件.

这是我的文件列表:

我试过用bash脚本做的:iiumlabs.[].csv.pgp和iiumlabs *我觉得curl在通配符上并不大.

curl -u login:pass ftp.myftpsite.com/iiumlabs* -O

问题:如何使用cURL下载此文件目录?

好的,考虑到你使用的是Windows,最简单的方法就是使用与之捆绑的标准ftp工具.我将以下解决方案基于Windows XP,希望它在其他版本上也能正常工作(或稍作修改).

首先,您需要为ftp程序创建一个批处理(脚本)文件,其中包含相关说明.根据需要命名,然后输入:

curl -u login:pass ftp.myftpsite.com/iiumlabs* -O

open ftp.myftpsite.com
login
pass
mget *
quit

第一行打开与ftp服务器ftp.myftpsite.com的连接.以下两行指定了登录,以及ftp要求的密码(替换登录并仅使用登录名和密码,没有任何关键字).然后,使用mget *获取所有文件.您可以使用任何通配符代替*.最后,使用quit关闭ftp程序而不进行交互式提示.

如果您需要先输入某个目录,请在mget之前添加cd命令.它应该非常简单.

最后,编写该文件并像这样运行ftp:

ftp -i -s:yourscript

其中-i禁用交互性(在下载文件之前询问),-s指定您创建的脚本的路径.

遗憾的是,Windows中本机不支持通过SSH进行文件传输.但是对于那种情况,你可能还是想要使用PuTTy工具.对于这种情况特别感兴趣的是pscp,它实际上是openssh scp命令的PuTTy计数器部分.

语法类似于copy命令,它支持通配符:

pscp -batch login@mysshsite.com:iiumlabs* .

如果使用密钥文件进行身份验证,则应使用-i path-to-key-file传递它.如果使用密码,-pw pass.它还可以使用load -load your-session-name参数重用使用PuTTy保存的会话.

猜你在找的Bash相关文章