我需要使用命令行从nexus存储库下载工件。工件文件名称是unknowm,但扩展名称始终为*.zip
。我使用带有通配符的curl命令。当我执行命令时,它显示HTTP/1.1 404 Not Found
curl --insecure -O -u username:password -v https://nexus.internal.org.com/content/repositories/snapshots/com/org/artifact/1.4.0/*.zip
> Accept: */*
>
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0< HTTP/1.1 404 Not Found
< Accept-Ranges: bytes
< Content-Type: text/html
< Date: Wed, 01 Mar 2017 22:28:35 GMT
< Server: Nexus/2.14.2-01
< X-Content-Type-Options: nosniff
< X-Frame-Options: SAMEORIGIN
< transfer-encoding: chunked
< Connection: keep-alive
该文件实际存在于URL位置。命令我运行得好吗?
答案 0 :(得分:1)
根据this answer的说明,我找到了一个很好的方法 它基本上会请求整个前缀的内容,在递归中设置一些边界,并通过类似shell的模式过滤接受的文件。
如果我没有弄错的话,做你想做的事的命令就是:
wget --recursive --level=1 --no-parent --no-directories \
--accept '*.zip' \
--directory-prefix=. \
https://nexus.internal.org.com/content/repositories/snapshots/com/org/artifact/1.4.0/