在使用jenkins的curl / wget下载shell之前,检查文件中是否存在文件

时间:2018-02-19 13:02:54

标签: unix curl artifactory

这是一个常见问题,不知何故,我无法让它为我工作。我有一个神器文件夹,我在其中存储json文件。

在jenkins上我应该下载其中一个jsons,例如Myfile.json。但只有文件存在时才必须这样做。

尝试使用以下方法: 方法:1)

url="https://abc/folder/Myfile.json"
if curl --output /dev/null --silent --fail -r 0-0 "$url"; then
echo "URL exists: $url"
else
echo "URL does not exist: $url"
fi

问题:即使是有效的网址,它也会继续进入其他条件。

我在bash shell中执行相同的操作。实现这一目标的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

您可以查看卷曲请求的错误代码,即

curl -s -o / dev / null -w"%{http_code}" http://www.example.org/

#!/bin/bash

url=$1

check_url=$(curl -s -o /dev/null -w "%{http_code}" ${url})

#echo $check_url

case $check_url in
[200]*)
  echo "URL exists: $url" 
  ;;
[404]*)
  echo "URL does not exist: $url" 
  ;;
*)
  echo "URL error - HTTP error code $check_url: $url"
  exit 1 
  ;;
esac