Tukubaiオンラインコマンドマニュアル - keta(1)

keta(1)

【名前】

keta : テキストファイルの桁そろえ

【書式】

Usage   : keta n1 n2 .. [<filename>]
          keta -v [<filename>]
          keta [--] [<filename>]
Version : Tue Sep  6 08:46:04 JST 2022
Edition : 1

【説明】

引数のファイルまたは標準入力のテキストデータの各フィールドの桁数をそろえて出力する。全フィールドに対してフィールド毎の桁数を指定する。指定桁数にそのフィールドの最大長未満を指定すると最大長がとられる。桁数指定をすべて省略すると各フィールドの桁数を自動的に判断して出力できる。フィールドは右詰めで出力するが、桁数指定に-を付けると左詰めにする。桁数指定をすべて省略して代わりに--を指定すると全フィールドを左詰めで出力する。<filename>として-を指定すると標準入力を使用する。桁数指定があるときは<filename>は省略可能になる。桁数指定がないときは<filename>は省略不可。-vまたは--指定があるときは桁数指定はできず<filename>は省略不可。<filename>が省略されたときは標準入力を仮定する。

【例1】

引数で指定したファイルの各フィールド毎に最大桁数を判断して桁数を自動出力する。

$ cat data
01 埼玉県 01 さいたま市 91 59 20 76 54
01 埼玉県 02 川越市 46 39 8 5 21
01 埼玉県 03 熊谷市 82 0 23 84 10
02 東京都 04 新宿区 30 50 71 36 30
02 東京都 06 港区 58 71 20 10 6
04 神奈川県 13 横浜市 92 56 83 96 75
$
$ keta data             ←右詰め
01   埼玉県 01 さいたま市 91 59 20 76 54
01   埼玉県 02     川越市 46 39  8  5 21
01   埼玉県 03     熊谷市 82  0 23 84 10
02   東京都 04     新宿区 30 50 71 36 30
02   東京都 06       港区 58 71 20 10  6
04 神奈川県 13     横浜市 92 56 83 96 75
$
$ keta -- data          ←左詰め
01 埼玉県   01 さいたま市 91 59 20 76 54
01 埼玉県   02 川越市     46 39 8  5  21
01 埼玉県   03 熊谷市     82 0  23 84 10
02 東京都   04 新宿区     30 50 71 36 30
02 東京都   06 港区       58 71 20 10 6
04 神奈川県 13 横浜市     92 56 83 96 75
$

【例2】

各フィールド毎の桁数を指定して出力する。引数としてファイルの各フィールドの1番目から最終フィールドまでのそれぞれの桁数を順に指定する。

↓2フィールド目の桁数ketan1 n2 n3 ・・・・nNF↑ ↑ 1フィールド目の桁数 最終フィールド目の桁数

なお、桁数は半角での文字数で指定する。大文字の場合は半角2文字分の指定が必要である。keta4は半角では4文字分、全角では2文字分になる。次のコマンドで例1と同じ出力が得られる。

$ keta 2 8 2 10 2 2 2 2 2 data

【例3】

通常は桁は右詰めで出力されるが、左詰めで出力する場合は桁数に-をつけて指定すれば良い。例えば第2フィールドと第4フィールドを左詰めにして出力するには次のようにコマンドを実行する。

$ keta 2 -8 2 -10 2 2 2 2 2 data
01 埼玉県   01 さいたま市 91 59 20 76 54
01 埼玉県   02 川越市     46 39  8  5 21
01 埼玉県   03 熊谷市     82  0 23 84 10
02 東京都   04 新宿区     30 50 71 36 30
02 東京都   06 港区       58 71 20 10  6
04 神奈川県 13 横浜市     92 56 83 96 7
$

【例4】

同じ桁数を連続したフィールドに指定する場合は<桁数x連続するフィールド数>と表記することができる。keta3x4はketa3 3 3 3と同じ意味を持つ。フィールド数にはNF(1行のフィールド数)を使用しNF-xxと指定できる。次のコマンドで例3と同じ出力が得られる。

$ keta 2 -8 2 -10 2x5 data
$ keta 2 -8 2 -10 2xNF-4 data

【例5】

-vオプションを使用するとファイルの各フィールドの最大桁数を表示させることができる。

$ keta -v data
2 8 2 10 2 2 2 2 2
$

次のコマンドで例1と同じ出力が得られる。

$ keta $(keta -v data) data

【関連項目】

comma(1)

Last modified: 2022-09-06 09:53:27