printfコマンドについてメモ
printfコマンドはデータを整形して出力する。
echoコマンドより詳細を指定できるので、平たくechoコマンド応用版と捉えて
おいてもいいだろうか。シェルスクリプトで利用することもありそうなのでメモしておく。
なお、単体で実行するとエラーになる。以下、オプションなど。
フォーマット内の指示記号
%c アスキー文字
%dまたは%i 整数
%e 浮動小数点数([ - ]d.精度e[ +-] ddの形に変換)
%E 浮動小数点数([ - ]d.精度e[ +-] ddの形に変換)
%f 浮動小数点数([ - ]ddd.精度の形の10進表現に変換)
%g %eと%fを比較して短い方
%G %Eと%fを比較して短い方
%o 符号なし8進数
%s 文字列
%u 符号なし10進数
%x 符号なし16進数(アルファベット小文字)
%X 符号なし16進数(アルファベット大文字)
%% 記号の%
%b 引数中のエスケープシーケンスを展開する
%q シェルの入力を再利用する
フォーマット内で指定するフラグ
- 左寄せする(指定がない場合は右寄せ)
スペース 正数の先頭にはスペース、負数の先頭には-を追加する。
+ 符号付きの数値の先頭に+を追加する
0 値を0で埋める
これだけ見ても何が何やら・・・なので、コマンド実行の見本も。
基本は、フォーマット指定の後に文字列or数値。途中、”%20s”の指定は20文字分の
文字列/数値を右寄せで出力、という意味になる。”%-20s”とすれば20文字分の左寄せ出力。

改行の指定は基本、のようだ。