MCMDでは、Table 2.5に示される環境変数の設定が可能で、 その値に応じてコマンドの動作を変更することが可能である。
変数名 |
デフォルト値 |
内容 |
KG_iSize |
4096000 |
read一回あたりのサイズ |
入力バッファサイズは、KG_iSizeの4倍のメモリが確保される。 |
||
ただし、kgsortfは10倍もしくはコマンドパラメータで設定した倍数確保される。 |
||
また、キーブロック単位で処理するコマンドのバッファサイズはKG_BlockCountを参照。 |
||
以下の条件を満たす必要がある。 |
||
KG_iSize=KG_MaxRecLen |
||
KG_iSize |
||
KG_oSize |
2048000 |
write一回あたりのサイズ |
出力バッファサイズは、KG_oSize同じサイズのメモリが確保される。 |
||
KG_oSize=KG_MaxRecLen |
||
KG_oSize |
||
KG_MaxRecLen |
1024000 |
一行あたりの最大文字数 (上限:10240000) |
KG_iSizeとKG_oSizeに示された条件を満たす必要がある。 |
||
KG_BlockCount |
128 |
キー単位ごとに処理 |
KG_iSizeの欄で示したバッファサイズ |
||
KG_MaxRecLen |
||
KG_TmpPath |
/tmp |
ライブラリ関数が用いるデフォルトの一時ファイル用ディレクトリ |
KG_Precision |
10 |
有効桁数 |
KG_VerboseLevel |
4 |
Mコマンドのエラーメッセージ出力レベル |
0: メッセージを一切出力しない |
||
1: + errorメッセージ出力 |
||
2: + warningメッセージ出力 |
||
3: + endメッセージ出力 |
||
4: + msgメッセージ出力(デフォルト) |
以下、コマンドのメッセージを制御するKG_VerboseLevelの設定を変更する例を示す。
デフォルトでは KG_Verbose=4 なので、正常終了時のメッセージもエラー終了メッセージも出力される。
$ more dat.csv k,v A,1 B,2 $ mcut f=k,v i=dat.csv o=out.csv #END# kgcut f=k,v i=dat.csv o=out.csv $ mcut x=k,v i=dat.csv o=out.csv #ERROR# unknown parameter x= (kgcut)
KG_Verbose=1とすると、エラー終了メッセージは表示されるが、正常終了メッセージは表示されない。
$ export KG_VerboseLevel=1 $ mcut f=k,v i=dat.csv o=out.csv $ mcut x=k,v i=dat.csv o=out.csv #ERROR# unknown parameter x= (kgcut)
KG_Verbose=0とすると、いずれのメッセージも表示されない。
$ export KG_VerboseLevel=0 $ mcut f=k,v i=dat.csv o=out.csv $ mcut x=k,v i=dat.csv o=out.csv