サイト内検索:
keta : テキストファイルの桁揃えをする。
使い方とオプション
keta n1 n2 .. <filename>
keta [--] <filename>
keta -v <filename>
-T<tmpdir>
引数のファイル又は標準入力のテキストデータの各フィールドの桁数を揃えて出力するツールです。各フィールドの桁数を自動的に判断して出力する方法とフィールド毎の桁を指定して出力する方法が可能です。
-T<tmpdir> オプションを指定すると、一時ファイルが必要な場合に一時ファイルをディレクトリ <tmpdir> に作成します。デフォールトは /tmp です。一時ファイルが必要な場合は、入力ファイルがパイプ等の特殊ファイルの場合です。
引数で指定したファイルの各フィールド毎に最大桁数を判断して桁数を自動出力します。
$ 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
各フィールド毎の桁数を指定して出力します。引数として1番目から最終フィールドまでのそれぞれの桁数を順に指定します。
↓2フィールド目の桁数
keta n1 n2 n3 ・・・・nNF
↑ ↑
1フィールド目の桁数 最終フィールド目の桁数
尚、桁数は半角の表示幅で指定します。全角文字は半角2文字分の幅になります。keta 4 は半角では4文字分、全角では2文字分になります。
$ keta 2 8 2 10 2 2 2 2 2 data
>> 例1と同じ出力になります。
通常は桁は右詰めで出力されますが、左詰めで出力する場合は 桁数に “-”を付けて指定します。
第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 75
同じ桁数を連続して指定する場合は “桁数x連続するフィールド数” と簡潔に表記することができます。keta 3x4 は keta 3 3 3 3 と同じ意味になります。フィールド数に NF(1レコードのフィールド数)を使用し、NF-xxと指定できます。
$ keta 2 -8 2 -10 2x5 data
$ keta 2 -8 2 -10 2xNF-4 data
>> 例3と同じ出力になります。
“-v” オプションを使用するとファイルの各フィールドの最大桁数を表示させることができます。
$ keta -v data
2 8 2 10 2 2 2 2 2
$ keta $(keta -v data) data
>> 例1と同じ出力になります。
Version : Tue Jun 18 19:00:37 JST 2019
Edition : 2
© 2021 Universal Shell Programming Laboratory site