Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

printfでスペース区切りな文字列/変数/実行結果を一つの"%s"に投入したい場合、単純に”で囲えばいいだけ

考えてみりゃ当たり前だったのですが、無駄に時間が掛かったのでメモ

実際のところ

$ printf "%s >>" foo bar
foo >>bar >>

$ printf "%s %s>>" foo bar

$ printf "%s>>" "foo bar"
foo bar>>

実際の例

なんも知らないと力業で%sを並べる羽目になりますが……

$ printf '{"value:": "%s %s" }' `/home/toyota/local/bin/tesseract bindeadbeef.jpg - -l eng `
{"value:": "DEAD BEEF" }

これも単純に囲ってあげるだけで何事もなく済みました

$ printf '{"value:": "%s" }' "`/home/toyota/local/bin/tesseract bindeadbeef.jpg - -l eng `"
{"value:": "DEAD BEEF"}