jq
数値を文字列に変換したり、文字列を連結したりする機能が組み込まれています。パディング(%4s)
と同様に、jqで文字列形式を指定する方法です。printf
たとえば、数字を左揃えにして10文字のスペースを占めるようにするにはどうすればよいですか?
echo '{"title" : "A sample name", "number" : 1214}' | jq '(.title) + " " + (.number | tostring)'
ベストアンサー1
jq
引用符付き文字列内で式を使用できます。\(foo)
文字列内では、バックスラッシュの後の括弧内に式を入れることができます。式が返す内容はすべて文字列に挿入されます。
jq '"The input was \(.), which is one less than \(.+1)"' <<< 42
結果:
"The input was 42, which is one less than 43"