ajw*_*ood 15 http wget version directory-listing
有一个目录通过网络提供,我有兴趣监控.它的内容是我正在使用的各种版本的软件,我想编写一个我可以运行的脚本来检查那里的内容,并下载任何比我已经获得的更新的内容.
有没有办法,比方说wget或什么,来获得目录列表.我试过wget在目录上使用,这给了我html.为了避免解析html文档,有没有办法检索一个简单的列表,就像ls会给出一样?
ajw*_*ood 25
我只是想办法做到这一点:
$ wget --spider -r --no-parent http://some.served.dir.ca/
Run Code Online (Sandbox Code Playgroud)
它非常冗长,所以你需要管理grep几次,具体取决于你所追求的东西,但信息就在那里.它看起来像打印到stderr,所以附加2>&1到grep它.我贪图"\ .tar\.gz"找到该网站提供的所有tarball.
请注意,wget在工作目录中写入临时文件,并不会清除其临时目录.如果这是一个问题,您可以更改为临时目录:
$ (cd /tmp && wget --spider -r --no-parent http://some.served.dir.ca/)
Run Code Online (Sandbox Code Playgroud)
您所要求的最佳服务是使用 FTP,而不是 HTTP。
HTTP 没有目录列表的概念,而 FTP 有。
大多数 HTTP 服务器不允许访问目录列表,而那些允许访问的服务器只是将其作为服务器的一项功能,而不是 HTTP 协议。对于那些 HTTP 服务器,它们决定生成并发送 HTML 页面供人类使用,而不是机器使用。您对此无法控制,并且别无选择,只能解析 HTML。
FTP 是为机器消耗而设计的,更重要的是引入了MLST和MLSD命令来取代不明确的LIST命令。
| 归档时间: |
|
| 查看次数: |
72067 次 |
| 最近记录: |