エラスティックサーチの検索結果をCSVにかえるワンライナー

エラスティックサーチの検索結果をCSVにかえるワンライナー

  ruby -r "json" -ne 'v=JSON.load($_);print v["hits"]["hits"][0]["_source"].values.map{|j| j.gsub("\n","\\n")}.join(",");' _search;

複数検索結果が返ってくる場合。

ruby -r "json" -ne 'v=JSON.load($_); v["hits"]["hits"].each{|j| puts j["_source"].values.join("\t").gsub("\n","\\n");};' _search; #シェル芸

事前に

curl -O -XGET "http://localhost:9200/docs_blog_v4_s30_201501/_search" -d'検索クエリ’

など、