JSONオブジェクトを読み取り、次jq
のようにフィールド値を別のファイルに追加します。
curl $JSON| jq '.body' | tee -a page1.md
これはうまく機能しますが、カールコマンドから抽出したマークダウンは表示されません。単に追加されただけで、太字のテキストpage1.md
などのマークダウンスタイルは考慮されません。###
たとえば、下の行はテスト実行中に上記のコマンドが追加されたのとまったく同じです。行の先頭と末尾に引用符があります。これらすべてが一行に出力され、元のカールから抽出された元のマークダウン形式の整合性が破壊されます。
"###test test test \r\n**test test **\r\n\r\n> test test test test\r\n\r\n\r\test test test\n"
Markdownが読みやすいように、フォーマットスタイルにこのテキストを追加するにはどうすればよいですか?引用が問題を引き起こしていると思いますか?
答え1
トークンを含む文字列は、エンコードされた形式でJSONドキュメントに保存されます。jq -r
代わりに使用するjq
と、外部引用符なしでデコードされた(「生」)出力が提供されます。
シェル変数を使用するときに二重引用符を使用することを忘れないでください。
curl "$JSON" | jq -r '.body' >> page1.md