我正在尝试使用wget传递-A参数和通配符" * .jar"来下载jar工件,但是jenkins并没有下载jar文件。相同的命令适用于非jenkins URL。有没有人与詹金斯合作。非常感谢您的投入。
wget --no-check-certificate --auth-no-challenge -A "*.jar" -r -l 1 -nd "https://jenkins.xxxx.com/job/xxxx/6/artifact/target/"
--2015-11-02 06:24:36-- https://jenkins.xxxx.com/job/xxxx/6/artifact/target/
Resolving jenkins.xxxx.com... 1.1.1.1
Connecting to jenkins.xxxx.com|1.1.1.1|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://jenkins.xxxx.com/job/xxxx/6/artifact/target/ [following]
--2015-11-02 06:24:37-- https://jenkins.xxxx.com/job/xxxx/6/artifact/target/
Reusing existing connection to jenkins.xxxx.com:443.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: `index.html'
[ <=> ] 12,420 --.-K/s in 0s
2015-11-02 06:24:37 (592 MB/s) - `index.html' saved [12420]
Loading robots.txt; please ignore errors.
--2015-11-02 06:24:37-- https://jenkins.xxxx.com/robots.txt
Connecting to jenkins.xxxx.com|1.1.1.1|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-11-02 06:24:37 ERROR 404: Not Found.
Removing index.html since it should be rejected.
FINISHED --2015-11-02 06:24:37--
Downloaded: 1 files, 12K in 0s (592 MB/s)
答案 0 :(得分:1)
更新:重新审视这一点,我发现Jenkins服务器实际上无法提供its robots.txt
file :
Loading robots.txt; please ignore errors.
--2015-11-02 06:24:37-- https://jenkins.xxxx.com/robots.txt
Connecting to jenkins.xxxx.com|1.1.1.1|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-11-02 06:24:37 ERROR 404: Not Found.
发生此404错误后,wget
解释说它不会保留已下载的index.html
:
Removing index.html since it should be rejected.
快速查询拒绝的wget
manual收益:
(...)接受/拒绝列表与下载的文件匹配两次: 一旦对URL的文件名部分,确定是否该文件 应该首先下载;之后,过了之后 接受并成功下载,本地文件的名称也是 检查接受/拒绝列表以查看是否应该 除去。 理由是,因为'.htm'和'.html'文件是 总是下载不管接受/拒绝规则,他们应该 下载并扫描链接后删除,如果他们这样做 匹配接受/拒绝列表。
这意味着您最初请求的URL已下载并扫描链接,但没有一个链接匹配*.jar
,因此没有检索到任何链接。然后,最初请求的index.html
被删除,因为它的名称也与*.jar
不匹配。
看起来实际上没有指向您要在此页面上直接下载的.jar
工件的链接。具有讽刺意味的是,这意味着我最终建议与之前相同 - 尝试使用-l2
而不是-l1
将子目录递归增加一级。正如我在之前的回答中所述,我在本地Jenkins安装上尝试了这个,我实际上需要-l2
从那里下载工件(但确切的级别可能取决于项目设置和文件夹结构)。请尝试:
wget --no-check-certificate --auth-no-challenge -A "*.jar" -r -l2 -nd "https://jenkins.xxxx.com/job/xxxx/6/artifact/target/"