macにjqコマンドをインストールする

jsonをいじる際になにかと便利な「jqコマンド」のmacでのインストール方法を徹底解説したいと思います。

インストール方法

標準で使えるbrewコマンドでインストールできます。

% brew install jq

<スポンサードリンク>

jqコマンドの使い方サンプル

jqコマンドの使い方のサンプルです。
試しに、bitcoinの価格を取得できるAPIを呼んでみましょう。

基本的には、パイプ( | )をつけてjqコマンドを続けて書くだけで、jsonを成形して表示してくれます。

% curl https://api.bitflyer.com/v1/getboard | jq           
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 92294  100 92294    0     0   166k      0 --:--:-- --:--:-- --:--:--  166k
{
  "mid_price": 719144,
  "bids": [
    {
      "price": 718989,
      "size": 0.2959
    },
    {
      "price": 718982,
      "size": 0.1011
    },
    {
      "price": 718949,
      "size": 0.50000013
    },
    {
      "price": 718948,
      "size": 0.38303991
    },
    {
      "price": 718901,
      "size": 1.00000013
    },
    {
      "price": 718900,
      "size": 1
    },
    {
      "price": 718859,
      "size": 0.1
    },
    {
      "price": 718803,
      "size": 1
    },
.
.
.
.

特定の要素を取得したいときは、こんな感じで取得できます。

% curl https://api.bitflyer.com/v1/getboard | jq '.bids[].price'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 92156  100 92156    0     0   511k      0 --:--:-- --:--:-- --:--:--  514k
719002
718990
718930
718901
718900
718859

こんな感じで、特定の項目のみ抜き出して、再成形することもできます。

% curl https://api.bitflyer.com/v1/getboard | jq '.bids[] | { price : .price }'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 92198  100 92198    0     0   404k      0 --:--:-- --:--:-- --:--:--  405k
{
  "price": 718907
}
{
  "price": 718904
}
{
  "price": 718900
}
{
  "price": 718859
}
{
  "price": 718810
}

json形式は、なにかと使うことが多いので、インストールしておいて損はないと思います。
シェルスクリプトを書いたりしていると大活躍です。

スポンサードリンク



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA