マニュアルページセク ション 1: ユーザーコマンド

印刷ビューの終了

更新: 2014 年 7 月
 
 

valrange(1)

名前

ckrange, errange, helprange, valrange - 整数の入力要求とその検証

形式

ckrange [-Q] [-W width] [-l lower] [-u upper] [-b base] [-d default] [-h help] [-e error] [-p prompt] [-k pid [-s signal]]
/usr/sadm/bin/errange [-W width] [-e error] [-l lower] [-u upper] [-b base]
/usr/sadm/bin/helprange [-W width] [-h help] [-l lower] [-u upper] [-b base]
/usr/sadm/bin/valrange [-l lower] [-u upper] [-b base] input

説明

ckrange ユーティリティーは、ユーザーに指定範囲内の整数の入力を要求して、ユーザーの応答が有効かどうかを検証します。このユーティリティーでは、ユーザーに指定範囲内の整数の入力を促すプロンプトメッセージ、ヘルプメッセージとエラーメッセージ、およびデフォルト値 (ユーザーが RETURN キーで応答した場合に返される値) をオプションにより定義します。

また、このコマンドは、有効な入力範囲も定義します。下限または上限のいずれかが定義されていない場合、範囲は一方の限界だけに制限されます。

メッセージの長さはすべて最大 79 文字に制限され、自動的に書式化されます。メッセージ定義内で 1 つのスペース文字の後にあるタブと復帰改行は削除されますが、スペースは削除されません。メッセージ定義の最初または最後にチルド文字がある場合は、そこにデフォルトテキストが挿入されて、指定したテキストとデフォルトテキストの両方を表示することができます。

プロンプトメッセージ、ヘルプメッセージ、またはエラーメッセージが定義されていない場合は、デフォルトメッセージ (「使用例」の項を参照) が表示されます。

ckrange コマンドには、3 つのビジュアルツールモジュールがリンクされています。これらのモジュールは、errrange (標準出力上にエラーメッセージを書式化して表示する)、helprange (標準出力上にヘルプメッセージを書式化して表示する)、および valrange (応答を検証する) です。

注: input 引数として負の値を指定すると、valrange 内の getopt で混乱が生じます。引数の前に - を付けると、getopt は処理を停止します。getopt のパラメータ処理については、getopt(1) および Intro(1) を参照してください。getopt は、位置指定パラメータを解析して、有効なオプションかどうかを検査するために使用されます。

オプション

サポートしているオプションは、次のとおりです。

–b base

入力する整数の基数を定義します。2 から 36 までの数字でなければなりません。デフォルト値は 10 です。基数を変換するには strtol(3C) を使用します。出力は常に、基数を 10 として実行されます。

–d default

default をデフォルト値として定義します。defaultstrtol(3C) を使用して指定した基数に変換できます。指定した基数に無効な文字があると、strtol はエラーを示すことなく変換を終了します。

–e error

error をエラーメッセージとして定義します。

–h help

help をヘルプメッセージとして定義します。

–k pid

ユーザーが中断を選択した場合、プロセス ID pid のプロセスにシグナルを送信するようにします。

–l lower

lower を範囲の下限として定義します。デフォルト値は、マシンの負の最大整数です。

–p prompt

prompt をプロンプトメッセージとして定義します。

–Q

有効な応答として終了 (quit) を使用できないようにします。

–s signal

終了が選択された場合、–k オプションで定義されたプロセス ID pid のプロセスに、シグナル signal を送信するようにします。シグナルを指定しないと、SIGTERM を送信します。

–u upper

upper を範囲の上限として定義します。デフォルト値は、マシンの正の最大整数です。

–W width

プロンプトメッセージ、ヘルプメッセージ、およびエラーメッセージを、width の行長に書式化します。

オペランド

次のオペランドを指定できます。

input

上限、下限、および基数と照合される入力

使用例 1 デフォルトのプロンプト

ckrange のデフォルトのプロンプトは、次のとおりです (基数は 10)

example% ckrange
Enter an integer between lower_bound and
upper_bound [lower_bound−upper_bound,?,q]:

使用例 2 デフォルトのエラーメッセージ

デフォルトのエラーメッセージは、次のとおりです (基数は 10)。

example% /usr/sadm/bin/errange
ERROR: Please enter an integer between lower_bound \
     and upper_bound.
使用例 3 デフォルトのヘルプメッセージ

デフォルトのヘルプメッセージは、次のとおりです (基数は 10)。

example% /usr/sadm/bin/helprange
Please enter an integer between lower_bound and upper_bound.
使用例 4 基数を 10 以外の数に変更した場合のメッセージ

基数を 10 以外の数に設定した場合、メッセージは "integer" から "base base integer" に変更されます。たとえば、

example% /usr/sadm/bin/helprange -b 36
使用例 5 終了 (quit) オプションの使用

終了オプションを選択した場合 (かつ使用できる場合) は、リターンコード 3 と共に q が返されます。終了を入力すると、後に復帰改行が続きます。

使用例 6 valrange モジュールの使用

valrange モジュールは、標準エラー出力に使用法に関するメッセージを作成します。正常終了した場合は 0、失敗した場合には 0 以外の値を返します。

example% /usr/sadm/bin/valrange
usage: valrange [-l lower] [-u upper] [-b base] input

終了ステータス

次の終了ステータスが返されます。

0

正常終了。

1

入力で EOF が検出された、–W オプションで負の行長が指定された、または使用法に誤りがあった。

2

使用方法のエラー。

3

ユーザー終了 (quit)。

属性

属性についての詳細は、マニュアルページの attributes(5) を参照してください。

属性タイプ
属性値
使用条件
system/core-os

関連項目

Intro(1), getopt(1), strtol(3C), attributes(5), signal.h(3HEAD)