どのようにjq '。' jsonを解析して表示しますか?jq 'とは何ですか?'行う?
私はJSONがXXXX」の背後にある実装でどのような解析され、正しくdiplayedされる参照
curl 'https://api.github.com/repos/stedolan/jq/commits?per_page=5' | jq '.'
| JQ '' "
どうすればわかりますか? the documentation
からどのようにjq '。' jsonを解析して表示しますか?jq 'とは何ですか?'行う?
私はJSONがXXXX」の背後にある実装でどのような解析され、正しくdiplayedされる参照
curl 'https://api.github.com/repos/stedolan/jq/commits?per_page=5' | jq '.'
| JQ '' "
どうすればわかりますか? the documentation
から:
.
絶対最も簡単な(そして最も興味深い)フィルタが
.
あります。これは入力を受け取り、出力としてそのまま出力するフィルタです。デフォルトでは、
jq
はすべての出力をきれいに印刷するので、この簡単なプログラムは、例えばcurl
からJSON出力をフォーマットするのに便利な方法です。
jqプログラミング言語では、.
はフィルタの暗黙的な入力を指します。たとえば、def f: .;
は、その暗黙の入力をそのまま出力する関数f
を定義します。
フィルタの引数の中で、フィルタは.
が参照するものを変更できます。たとえば、map(f)
は[.[] | f]
と定義されています。 jqプログラム[1, 2, 3] | map(. + 1)
の.
は配列の要素のそれぞれを指します。
jq .
出力に加えて、入力ファイルを解析できない場合は警告も出力されます。このように、未知のJSONファイルをテストして、ソースファイルに構文上の問題があるかどうかを確認すると便利です。
jqは最初にJSONを解析し、解析されたバージョンをきれいに印刷します。これは特に、数字の最初の表現が失われることを意味します。 – peak
@peak:「数字の初期表現」とはどういう意味ですか? –
入力表現。たとえば、1.0e1000になると考えてください。 – peak