私はcurlを使ってAPIからデータを取り込み、スクリプトの大半を実行しようとしていますが、助けが必要です。 APIは検索する必要がある複数のページに結果があり、私はその関数をスクリプト化することができましたが、ループを止める方法を理解できません。また、各ページのデータを個々のイベントに分割する方法を理解する上で、いくつかの支援が必要です。各イベントは同じ文字列で始まるので、イベントを分割するために使用するテキストを知っていますが、そのための構文はわかりません。誰かがそれを助けることができますか?私のコードは以下の通りです:ひねったBashスクリプティングカールのリクエスト
#!/bin/sh
string='next\":null'
for ((i=1;until $string;i++)); do
curl -H "Authorization: Token insertlongtokenhere" -H "Content-Type: application/json" https://api.app.secunia.com/api/tickets/?page=$i
done
この文字列メソッドを使用して私が無駄に二重引用符をコメントアウトする他の方法を試してみた
./secunia.sh: line 3: ((: until next\":null: syntax error: invalid arithmetic operator (error token is "\":null")
を与えるので、私は一種のこだわっています。
「$ string」まではどういう意味ですか? – Barmar
'for'ループ内の終わりをテストし、' break'ステートメントを使ってループを停止することができます。 – Barmar
私は終わったと思ったが、私はそうではなかった。私はSplunkにページの内容をイベントに分割させたいと考えていましたが、それはできません。私はイベントの間にあるコンマを捨てようとしていますが、うまくいきません。これは、 "last_updated"に入っているjsonの部分です: "2017-02-28T17:56:19Z"}、{"id":588699、 "name":null、 'これはsed行です'sed -e 's /}、{/} + {/" -e "s}} * $ /} /" secunia.txt | tr "+" "\ n" '、そして私はforループの外に置いていますが、'、 'を引き出すわけではありません。私は何が欠けていますか? – manderson