[英]Jenkins check file exists inside zip file
有沒有辦法在不解壓縮的情況下檢查 zip 文件中是否存在文件。 我正在使用 Artifactory 。 如果使用 curl 不能。 可以給我建議
我在下面試過
sh(script: "curl -o /dev/null -sf <antifactory url>")
這總是返回成功及以下
unzip -l <file.zip> | grep -q <file name>
這需要安裝解壓縮
您可以使用 bash 命令unzip
和grep
。
unzip -l my_file.zip | grep -q file_to_search
# Example
$ unzip -l 99bottles.zip | grep -q 99bottles.pdf && echo $?
0
PS 如果 zip 包含目錄結構,則使用文件名的完整路徑 grep
從本頁提到的 Artifactory 7.15.3 開始,存檔搜索默認禁用。 你能確認你是否是高於此的版本。 如果是,您可以通過導航到 Admin > Artifactory > Archive Search Enabled 並啟用此復選框來啟用此功能。 但請注意,如果我們啟用此功能,它會不斷為每個存檔文件將大量信息寫入數據庫,並可能影響性能。
稍后您可以在 zip 文件中搜索項目。 下面是一個示例命令,我在其中從 curl 的 zip 中搜索 .class 文件。 您可以在 Jenkis 中選擇與此類似的選項。
$ curl -uadmin:password -X GET "http://localhost:8082/artifactory/api/search/archive?name=*.class&repos=test" -H "Content-type: application/json"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.