外部ツール(awkに似たJSON処理ツールであるjqのような)を使わずにbashでこれを行うのはおそらく少し信頼できないが、ここでは行く。
メッセージをカールすると、そのツールで出力がJSONであり、各メッセージに必要なURIがあることがわかります。また、メッセージを編集するには、curl XPOST <message_uri> -d "Body=" -u "<auth_string>"
を使用することがわかります。各メッセージのURIを選択し、curlを使用して各メッセージURIに空の本文を投稿すると、メッセージが削除されます。
curl -G https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXX/Messages.json -u 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token' \
| grep '"uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/' \
| cut -d'"' -f 4 \
| xargs -I {} curl -XPOST "https://api.twilio.com/"{} -d "Body=`-u 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token'
明らかに、すべてのACXX文字列をアカウント情報に置き換える必要があります。
まず、メッセージを取得するためにMessages.jsonをカールします。 grepを使用して、各メッセージのURIをリッピングします。生のURIを取得するためにcutを使用します。次に、xargs
とcurl
を使用して、各メッセージURIに空の本文を投稿します。
これはページ分割を処理しないという点でかなり脆弱で、messages.jsonエンドポイントからの期待される出力以外は何も処理しません。空の本文投稿からの応答をチェックしませんメッセージを修正すると、出力はおそらく醜いでしょう。しかし、APIのようにすべてがうまくいくとすれば、それはうまくいくはずです。なぜなら、より堅牢なJSON構文解析を持つ言語でこれを行うのはいい考えです。
質問入力にサンプル入力と希望する出力を追加してください。あなたのコーディング努力を示してください。 – Cyrus