DtoLine - Dファイルから行データへ

[ 英語 | 日本語 ]

[Dホームページへ]

形式

DtoLine [ -f field-format-list ] [ -p field-format-list ] [ -t default-delimiter ] [ -z default-options ] [ input-file.. ]

説明

DtoLineinput-files のD-レコードをテキストファイルの行形式に変換する。 通常では, DtoLine は,入力D-レコードの各フィールドの値部分を省略時デリミタ(TAB)でつないで 1行とし,出力する。 入力D-レコードの全フィールドが, 入力レコード中のフィールド順に従ってつなげられる。 (最後のフィールドの後にはデリミタはつかない。)

省略時デリミタと出力フォーマットオプションは, コマンドオプション -t および -z によって変更できる。

オプション -f field-format-list があると,(ただしオプション -p はない場合) 各フィールド値は与えられたフォーマットにしたがって変換される。 このオプション -f はフィールドを選択しないし,フィールド順も指定しない ことに注意せよ。

オプション -p field-format-list が指定されると, これらのフィールドだけを,この順に出力する。 リストされたフィールドがない場合,値が空文字列として扱う。 リスとされたフィールドがレコード中に複数あるとき, それらの値が繰り返し出力される。 リストされたフィールドがレコード中にまったくない場合, 空行(長さ0の行)が出力される。 このリスト中に同じ名前のフィールドが重複して現れると, 同じ値が重複して出力される。

オプション

-f field-format-list
各フィールドに対する出力フォーマットを与える。
-p field-format-list
変換されるフィールド名とそのフィールド順とを与える。
-t default-delimeter
field-format-list の省略時デリミタを与える。 この指定がないとTAB制御文字となる。
-z default-options
出力フォーマットオプション(lrqxQbf)の省略時値を与える。 この指定がないと,オプションなしとなる。
-D [i/o]datautf=8|16|32
UTF入出力機能参照。

環境変数

Ddatautf, Didatautf, Dodatautf
UTF入出力機能参照。

使用例

CSVファイル

CSVファイルへの変換(フィールド名行なし)

DtoLine -t , -z q

(入力Dレコードは,すべて同じフィールド順で, リピーティングフィールドもないものであること。 オプション-pを使用して,フィールド順を 保証することも可能である。ただし, この場合もリピーティングフィールドのないこと。)

出力フォーマット(-fオプション)

コマンド:

DtoLine -f "b://,c:/;/,a:/:/"

入力:

a:A1
b:B1
c:C1
d:D1

a:A2
c:C21
b:B2
c:C22

結果:

A1:B1C1;D1
A2:C21;B2C22

フィールド指定(-pオプション)

コマンド:

DtoLine -p recordcount

入力:

recordcount:1
fieldcount:3
charcount:37

結果:

1

UNIXの/etc/groupファイル出力

コマンド:

DtoLine -t ":" -f "user:/\,/"

入力:

groupname:sys
passwd:
gid:3
user:root
user:bin
user:sys
user:adm

結果:

sys::3:root,bin,sys,adm

メッセージ

マニュアル D_msg参照。

参照

DintroDfromLineDtoCsvDtoTexD_fmtD_msg

AUTHOR

MIYAZAWA Akira


miyazawa@nii.ac.jp
2003