簡體   English   中英

用於調用curl的Shell / bash腳本

[英]Shell/bash script for invoking curl

如果我在CSV文件中的字段中遇到失敗,我需要調用Rest api調用:

我有一個CSV文件,如下所示:

項目 api_name api_result 響應

xyz PASS 200,日期:2015年11月16日星期一20:52:26

b abc失敗501,日期:2015年11月17日星期一20:52:26

c mas PASS 200,Date:Mon,18 Nov 2015 20:52:26

我需要一個shellbash腳本來執行以下操作

1)每次在api_result中出現FAIL時調用curl。

2)將值從CSV傳遞到我的curl命令。 示例我需要將CSV中api_name的值作為摘要傳遞給我的數據,如下所示:

請求:

curl POST --data {see below} -H "Content-Type: application/json" http://localhost:8090/rest/api/2/issue/

數據

{
    "fields": {

       "summary": **$api_name**

   }
}

我也開放替代選項,而不是shell / bash腳本。 我嘗試使用Shell進行此操作的原因是因為我正在使用Jenkins。

您描述的輸入並不是真正的CSV格式,但是假設輸入與您所顯示的相同,並且位於名為input.txt的文件中,則以下概述了您可以采用的一種方法(使用bash):

while read project api_name api_result etc
do
    if [ "$api_result" = "FAIL" ] ; then
      echo curl ... $'\'{"fields": { "summary": "' "$2" $'" }}\''
    fi
done < <(cat input.txt)

假設project和api_name作為輸入行上的前兩個標記出現。 如果不是這種情況,那么您可能需要考慮首先修改input.txt,使其采用TSV(制表符分隔的值)格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM