フォーマットされた印刷にjqを使用する方法は?

フォーマットされた印刷にjqを使用する方法は?

jq数値を文字列に変換したり、文字列を連結したりする機能が組み込まれています。パディング(%4s)
と同様に、jqで文字列形式を指定する方法です。printf

たとえば、数字を左揃えにして10文字のスペースを占めるようにするにはどうすればよいですか?
echo '{"title" : "A sample name", "number" : 1214}' | jq '(.title) + " " + (.number | tostring)'

ベストアンサー1

jq引用符付き文字列内で式を使用できます。\(foo)

文字列補間 -\(foo)

文字列内では、バックスラッシュの後の括弧内に式を入れることができます。式が返す内容はすべて文字列に挿入されます。

jq '"The input was \(.), which is one less than \(.+1)"' <<<  42

結果:

"The input was 42, which is one less than 43"

おすすめ記事