getconf コマンド
目的
システム構成変数値を標準出力に書き出します。
構文
getconf [ -v specification ] [ SystemwideConfiguration | PathConfiguration PathName ] [ DeviceVariable DeviceName ]
getconf -a
説明
getconf コマンドは、 SystemwideConfiguration パラメーターを指定して呼び出され、 SystemwideConfiguration パラメーターで指定された変数の値を標準出力に書き込みます。
PathConfiguration および Pathname パラメーターを指定して呼び出された getconf コマンドは、 PathName パラメーターによって指定されたパスの PathConfiguration パラメーターによって指定された変数の値を標準出力に書き込みます。
-a フラグを指定して getconf コマンドを起動すると、 すべてのシステム構成変数が標準出力に書き込まれます。
DeviceVariable および DeviceName パラメーターを指定して呼び出された getconf コマンドは、 DeviceName パラメーターで指定されたデバイス・パスのディスク・デバイス名またはロケーションの値を標準出力に書き込みます。
指定した変数がシステム上で定義され、その値が confstr サブルーチンから使用可能であると記述されている場合、指定変数の値は次の構文で書き込まれます。
"%s\n", <value>それ以外の場合で、指定変数がシステム上で定義されていると、その値は次の構文で書き込まれます。
"%d\n", <value>指定した変数が有効であっても、システム上に定義されていなければ、標準出力に次のように書き出されます。
"undefined\n"変数名が無効であるか、またはエラーが発生すると、診断メッセージが標準エラーに書き出されます。
フラグ
| 項目 | 説明 |
|---|---|
| -v 仕様 | 構成変数を判別する特定の仕様とバージョンを指定します。 このフラグを指定しないと、戻される値は、インプリメント・デフォルトの XBS5 準拠コンパイル環境に対応します。 |
| -a | すべてのシステム構成変数の値を標準出力に書き込みます。 |
パラメーター
| 項目 | 説明 |
|---|---|
| PathName | PathConfiguration パラメーターのパス名を指定します。 |
| SystemwideConfiguration | システム構成変数を指定します。 |
| PathConfiguration | システム・パス構成変数を指定します。 |
| DeviceName | デバイスのパス名を指定します。 |
| DeviceVariable | デバイス変数を指定します。 |
| system_var | confstr 名前値 |
|---|---|
| BOOT_DEVICE | _CS_AIX_BOOTDEV |
| MACHINE_ARCHITECTURE | _CS_AIX_ARCHITECTURE |
| MODEL_CODE | _CS_AIX_MODEL_CODE |
| PATH | _CS_PATH |
| XBS5_ILP32_OFF32_CFLAGS | _CS_XBS5_ILP32_OFF32_CFLAGS |
| XBS5_ILP32_OFF32_LDFLAGS | _CS_XBS5_ILP32_OFF32_LDFLAGS |
| XBS5_ILP32_OFF32_LIBS | _CS_XBS5_ILP32_OFF32_LIBS |
| XBS5_ILP32_OFF32_LINTFLAGS | _CS_XBS5_ILP32_OFF32_LINTFLAGS |
| XBS5_ILP32_OFFBIG_CFLAGS | _CS_XBS5_ILP32_OFFBIG_CFLAGS |
| XBS5_ILP32_OFFBIG_LDFLAGS | _CS_XBS5_ILP32_OFFBIG_LDFLAGS |
| XBS5_ILP32_OFFBIG_LIBS | _CS_XBS5_ILP32_OFFBIG_LIBS |
| XBS5_ILP32_OFFBIG_LINTFLAGS | _CS_XBS5_ILPBIG_OFF32_LINTFLAGS |
| XBS5_LP64_OFF64_CFLAGS | _CS_XBS5_LP64_OFF64_CFLAGS |
| XBS5_LP64_OFF64_LDFLAGS | _CS_XBS5_LP64_OFF64_LDFLAGS |
| XBS5_LP64_OFF64_LIBS | _CS_XBS5_LP64_OFF64_LIBS |
| XBS5_LP64_OFF64_LINTFLAGS | _CS_XBS5_LP64_OFF64_LINTFLAGS |
| XBS5_LPBIG_OFFBIG_CFLAGS | _CS_XBS5_LPBIG_OFFBIG_CFLAGS |
| XBS5_LPBIG_OFFBIG_LDFLAGS | _CS_XBS5_LPBIG_OFFBIG_LDFLAGS |
| XBS5_LPBIG_OFFBIG_LIBS | _CS_XBS5_LPBIG_OFFBIG_LIBS |
| XBS5_LPBIG_OFFBIG_LINTFLAGS | _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS |
環境変数
次に示す環境変数は、getconf コマンドの実行に影響を与えます。
| 項目 | 説明 |
|---|---|
| LANG | 設定されていない、または null である国際化対応変数のデフォルト値を指定します。 指定する場合は、LANG設定解除または NULL の場合は、実装依存の | デフォルト・ロケールの対応する値が使用されます。 国際化対応変数のいずれかに無効な値が設定されると、ユーティリティーは、変数が 1 つも定義されていないものとして動作します。 |
| LC_CALL | 空文字列以外の値に設定する場合は、ほかのすべての国際化対応変数の値を指定変更してください。 |
| LC_CTYPE | テキスト・データのバイト・シーケンスを文字として解釈するのに使用するロケールを決めます (例えば、引数の複数バイト文字に対する単一バイト文字)。 |
| LC_MESSAGES | 標準エラーに書き出される診断メッセージの書式と内容に影響を与えるロケールを決めます。 |
| NLSPATH | LC_MESSAGES の処理に使用するメッセージ・カタログの位置を指定します。 |
全システム構成変数
SystemwideConfiguration パラメーターは、システム全体で有効なシステム構成変数を指定します。 システム構成変数の値には次の 2 種類があります。
全システム構成変数
全システム構成変数には、システムのあらゆる部分を満たす最小値が入っています。 次に示すリストに、getconf コマンドと一緒に使用する全システム構成変数の定義を示します。
| 項目 | 説明 |
|---|---|
| _CS_PATH | コマンドの検索に使用する PATH 環境変数の値です。 |
| ARG_MAX | 環境データを含む、 exec サブルーチンの 1 つの引数の最大長 (バイト単位)。 |
| BC_BASE_MAX | bc コマンドで obase 変数に使用できる最大値。 |
| BC_DIM_MAX | bc コマンドによって配列内で許可されるエレメントの最大数。 |
| BC_SCALE_MAX | bc コマンドで scale 変数に使用できる最大値。 |
| BC_STRING_MAX | bc コマンドで受け入れられるストリング定数の最大長。 |
| 「CHARCLASS_NAME_MAX」 | 文字クラス名の最大バイト数です。 |
| CHAR_BIT | タイプ文字内のビット数です。 |
| CHAR_MAX | タイプ文字の最大値です。 |
| CHAR_MIN | タイプ文字の最小値です。 |
| CHILD_MAX | 各実ユーザー ID の同時プロセスの最大数です。 |
| CLK_TCK | time サブルーチンによって戻される 1 秒当たりのクロック・ティックの数。 |
| COLL_WEIGHTS_MAX | ロケール定義ファイルの LC_COLLATE ロケール・スタンザのエントリーに割り当てられた重みの最大数です。 |
| CS_PATH (CS_PATH) | コマンドの検索に使用する PATH 環境変数の値です。 |
| EXPR_NEST_MAX | expr コマンドによって括弧内にネストできる式の最大数。 |
| INT_MAX | int 型の最大値です。 |
| INT_MIN | int 型の最小値です。 |
| LINE_MAX | ユーティリティーがテキスト・ファイル処理中と表示されたときの、コマンド入力行 (標準入力、またはその他のファイル) の最大長 (バイト単位) です。 この長さには、後続の改行文字を入れる余地が含まれます。 |
| LONG_BIT | long int 型のビット数です。 |
| LONG_MAX | long int 型の最大値です。 |
| LONG_MIN | long int 型の最小値です。 |
| MB_LEN_MAX | サポートされるロケールの文字内の最大バイト数です。 |
| NGROUPS_MAX | 各プロセスの同時的な 2 次的グループ ID の最大数です。 |
| NL_ARGMAX (NL_ARGMAX) | printf および scanf サブルーチンの 呼び出しに使える最大桁です。 |
| NL_LANGMAX (NL_LANGMAX) | LANG 名に使える最大バイト数です。 |
| NL_MSGMAX | 最大メッセージ数です。 |
| 最大 NL_NMAX | N 対 1 の照合マッピングに使える最大バイト数です。 |
| NL_SETMAX | 最大セット数です。 |
| NL_TEXTMAX | メッセージ文字列に使える最大バイト数です。 |
| NZERO (ゼロ) | デフォルトのプロセス優先順位です。 |
| OPEN_MAX | 1 つのプロセスが一度にオープンできる最大ファイル数です。 |
| パス | コマンドの検索に使用されるコロンで区切られたパス・プレフィックスのシーケンスです。 |
| RE_DUP_MAX | ed コマンドで m および n パラメーターなどの interval-notation パラメーターを使用するときに許可される正規表現の繰り返しの最大回数。 |
| SCHAR_MAX | signed char 型の最大値です。 |
| SCHAR_MIN | signed char 型の最小値です。 |
| SHRT_MAX | short 型の最大値です。 |
| SHRT_MIN | short 型の最小値です。 |
| SSIZE_MAX | ssize_t 型のオブジェクトの最大値です。 |
| STREAM_MAX | 1 つのプロセスが同時にオープンできるストリーム数です。 |
| TMP_MAX | tmpnam サブルーチンにより生成される固有のパス名の最小数です。 アプリケーションが tmpnam サブルーチンを確実に呼び出すことができる最大回数です。 |
| TZNAME_MAX | タイムゾーンの名前に使用できる最大バイト数です (TZ 環境変数の長さではありません)。 |
| UCHAR_MAX | unsigned char 型の最大値です。 |
| UINT_MAX | unsigned int 型の最大値です。 |
| ULONG_MAX | unsigned long int 型の最大値です。 |
| USHRT_MAX | unsigned short int 型の最大値です。 |
| WORD_BIT (WORD_BIT) | ワードまたは int 型のビット数です。 |
| KERNEL_BITMODE (KERNEL_BITMODE) | カーネルのビット・モードで、32 ビットまたは 64 ビットです。 |
| レルム・メモリー (REAL_MEMORY) | 実メモリー・サイズです。 |
| ハードウェア・ビット・モード | マシン・ハードウェアのビット・モードで、32 ビットまたは 64 ビットです。 |
| MP_CAPABLE (MP_CAPABLE) | マシンの MP 機能です。 |
システム標準構成変数
システム標準構成変数には、特定のシステム標準に必要な最小 値が入っています。 プレフィックス _POSIX_、POSIX2_、および _XOPEN_ は、それぞれ POSIX 1003.1、POSIX 1003.2、および X/OPEN システム標準に必要なシステム特性の最小値が変数に入っていることを示します。 システム標準は、特定のシステム標準をサポートするためのシステム全体に渡る最小値です。 実際の構成値がこれらの標準を超える場合があります。 getconf コマンド用のシステム標準構成変数の定義は次のとおりです。
| 項目 | 説明 |
|---|---|
| _POSIX_ARG_MAX | 環境データを含む、 exec サブルーチンの 1 つの引数の最大長 (バイト単位)。 |
| _POSIX_CHILD_MAX | 各実ユーザー ID の同時プロセスの最大数です。 |
| _POSIX_JOB_CONTROL (_POSIX_JOB_CONTROL) | システムがジョブ制御をサポートする場合は、値 1 です。 |
| _POSIX_LINK_MAX | 1 つのファイルへの最大リンク数です。 |
| _POSIX_MAX_CANON | 端末正規入力キュー内の最大バイト数です。 |
| _POSIX_MAX_INPUT | 端末入力キュー内の許容最大バイト数です。 |
| _POSIX_NAME_MAX | ファイル名の最大バイト数です (最後の null を除く)。 |
| _POSIX_NGROUPS_MAX | 各プロセスの同時的な 2 次的グループ ID の最大数です。 |
| _POSIX_OPEN_MAX | 1 つのプロセスが一度にオープンできる最大ファイル数です。 |
| _POSIX_PATH_MAX | パス名の最大バイト数です。 |
| _POSIX_PIPE_BUF | パイプへの書き込み時にアトミックであることが保証される最大バイト数です。 |
| _POSIX_SAVED_IDS | 1 の値。 各プロセスには、保管された set-user-ID と保管された set-group-ID があります。 |
| _POSIX_SSIZE_MAX | ssize_t 型のオブジェクト内に格納できる最大値です。 |
| _POSIX_STREAM_MAX | 1 つのプロセスが同時にオープンできるストリーム数です。 |
| _POSIX_TIMESTAMP_RESOLUTION | ナノ秒単位でのすべてのファイル・タイム・スタンプのレゾリューション。 |
| _POSIX_TZNAME_MAX | タイムゾーンの名前に使用できる最大バイト数です (TZ 環境変数の長さではありません)。 |
| _POSIX_VERSION (_POSIX_VERSION) | オペレーティング・システムが準拠する POSIX 1 標準 (C 言語バインディング) のバージョンです。 |
| _XOPEN_CRYPT | システムが X/Open Encryption Feature Group をサポートする場合は、値 1 です。 |
| _XOPEN_ENH_I18N | システムが X/Open Enhanced Internationalisation Feature Group をサポートする場合は、値 1 です。 |
| XOPEN_SHM (_XOPEN_SHM) | システムが X/Open Shared Memory Feature Group をサポートする場合は、値 1 です。 |
| _XOPEN_VERSION | オペレーティング・システムが準拠する X/Open Portability Guide のバージョンです。 |
| _XOPEN_XCU_VERSION | オペレーティング・システムが準拠する X/Open Commands and Utilities 仕様のバージョンです。 |
| _XOPEN_XPG2 | システムが X/Open Portability Guide, Volume 2, (1987 年 1 月) の XVS System Calls and Libraries をサポートする場合の値は 1 で、それ以外の場合は未定義です。 |
| _XOPEN_XPG3 | システムが X/Open Specification (1992 年 2 月) System Interfaces and Headers, Issue 3 をサポートする場合の値は 1 で、それ以外の場合は未定義です。 |
| _XOPEN_XPG4 | システムが X/Open CAE Specification (1992 年 7 月) の System Interfaces and Headers, Issue 4 をサポートする場合の値は 1 で、それ以外の場合は未定義です。 |
| POSIX2_BC_BASE_MAX | bc コマンドで obase 変数に使用できる最大値。 |
| POSIX2_BC_DIM_MAX | bc コマンドによって配列内で許可されるエレメントの最大数。 |
| POSIX2_BC_SCALE_MAX | bc コマンドで scale 変数に使用できる最大値。 |
| POSIX2_BC_STRING_MAX | bc コマンドで受け入れられるストリング定数の最大長。 |
| POSIX2_CHAR_TERM | システムが端末タイプを少なくとも 1 つはサポート する場合の値は 1、それ以外の場合の値は -1 です。 |
| POSIX2_COLL_WEIGHTS_MAX | ロケール定義ファイル内の LC_COLLATE ロケール変数のエントリーに割り当て可能な重みの最大数です。 |
| POSIX2_C_BIND | システムが POSIX 2 の C Language Binding Option をサポートする場合の値は 1 で、それ以外の場合は -1 です。 |
| POSIX2_C_DEV | システムが POSIX 2 の C Language Development Utilities をサポートする場合の値は 1、それ以外の場合の値は -1 です。 |
| POSIX2_C_VERSION | オペレーティング・システムが準拠する POSIX 2 標準 (C 言語バインディング) のバージョンです。 |
| POSIX2_EXPR_NEST_MAX | expr コマンドによって括弧内にネストできる式の最大数。 |
| POSIX2_FORT_DEV | システムが POSIX 2 の FORTRAN Development Utilities Option をサポートする場合の値は 1 で、それ以外の場合は -1 です。 |
| POSIX2_FORT_RUN | システムが POSIX 2 の FORTRAN Runtime Utilities Option をサポートする場合の値は 1 で、それ以外の場合は -1 です。 |
| POSIX2_LINE_MAX | コマンドがテキスト・ファイルを処理中として記述されたときの、コマンドの入力行 (標準入力または別ファイル) の最大長 (バイト単位) です。 この長さには、後続の改行文字を入れる余地が含まれます。 |
| POSIX2_LOCALEDEF | システムが localedef コマンドによるロケールの作成をサポートする場合は、値 1。それ以外の場合は、未定義です。 |
| POSIX2_RE_DUP_MAX | ed コマンドで m および n パラメーターなどの interval-notation パラメーターを使用するときに許可される正規表現の繰り返しの最大回数。 |
| POSIX2_SW_DEV | システムが Software Development Utilities Option をサポートする場合の値は 1、それ以外の場合の値は -1 です。 |
| POSIX2_UPE | システムが POSIX 2 の User Portability Utilities Option をサポートする場合の値は 1 で、それ以外の場合は -1 です。 |
| POSIX2_VERSION | システムがサポートする最新バージョンの POSIX 2 標準の承認日です。 日付は 6 桁の数で、最初の 4 桁は年、最後の 2 桁は月を示します。 さまざまなバージョンの POSIX 2 標準が IEEE 標準化委員会によって定期的に承認され、承認日は各バージョンを区別するために使用されます。 |
システム・パス構成変数
PathConfiguration パラメーターは、システム内のパスとパス構造の情報が値に含まれているシステム・パス構成変数を指定します。 これらの変数の定義は次のとおりです。
| 項目 | 説明 |
|---|---|
| _POSIX_CHOWN_RESTRICTED | chown () サブルーチンの実行は、該当する特権を持つプロセスに対して、またファイルのグループ ID をプロセスの実効グループ ID またはその補足グループ ID のいずれかに変更することに対して限定されます。 PathName パラメーターがディレクトリーを参照する場合、戻される値は、既存のディレクトリー、またはディレクトリー内で作成可能なディレクトリー以外の、任意のファイルに適用されます。 |
| _POSIX_NO_TRUNC (_POSIX_NO_TRUNC) | パス名が NAME_MAX 変数により指定された制限を超えると、エラーが生成されます。 PathName パラメーターがディレクトリーを参照する場合、戻される値はそのディレクトリー内のファイル名に適用されます。 |
| _POSIX_VDISABLE | termios.h ファイルに定義されている端末特殊文字は、この文字値を使用して使用不可にすることができます。 |
| LINK_MAX | 1 つのファイルへの最大リンク数です。 PathName パラメーターがディレクトリーを参照する場合、戻される値はそのディレクトリーに適用されます。 |
| MAX_CANON | 端末正規入力待ち行列内の最大バイト数です。 |
| MAX_INPUT | 端末入力キュー内で使用できる空間の最大バイト数です。 |
| NAME_MAX | ファイル名の最大バイト数です (最後の null を除く)。 PathName パラメーターがディレクトリーを参照する場合、戻される値はそのディレクトリー内のファイル名に適用されます。 |
| PATH_MAX | 最後の null 文字を含めた、パス名の最大バイト数です。 PathName パラメーターがディレクトリーを参照する場合、指定したディレクトリーが作業ディレクトリーであるときは、戻される値は相対パス名の最大長です。 |
| PIPE_BUF | パイプへの書き込み時にアトミックであることが保証される最大バイト数です。 PathName パラメーターが FIFO またはパイプを参照する場合、戻される値は参照先オブジェクトに適用されます。 PathName パラメーターがディレクトリーを参照する場合、戻される値は既存の FIFO、またはそのディレクトリー内で作成できる FIFO に適用されます。 |
| ディスク・パーティション | ディスクの物理区画サイズです。 注: DISK_PARTITION パス構成変数の場合、 PathName パラメーターには、情報を照会するディスクの完全パスを指定する必要があります。
|
| ディスク・サイズ | ディスク・サイズを MB で指定します。 メモ: DISK_SIZEパス構成変数では、PathNameパラメータに、情報を照会するディスクの完全なパスを指定する必要がある。
|
デバイス変数
DeviceVariable パラメーターは、DeviceName パラメーター が /dev/hdisk0 のようなデバイスのパスであることを示します。 ディスクの パスを指定すると、getconf コマンドは、ディスクのデバイス名または ロケーションを表示します。
| 項目 | 説明 |
|---|---|
| ディスク・デバイス名 | デバイス名またはデバイスのロケーションです。 |
終了状況
このコマンドは、以下の終了値を戻します。
| 項目 | 説明 |
|---|---|
| 0 | 指定された変数が有効で、現在の状態に関する情報が正常に書き込まれました。 |
| >0 | エラーが発生しました。 |
例
- ARG_MAX 変数の値を表示するには、次のコマンドを入力します。
getconf ARG_MAX - /usr ディレクトリーの NAME_MAX 変数の値を表示するには、次のコマンドを入力します。
getconf NAME_MAX /usr - 次のシェル・コマンドのシーケンスは、未指定の戻り値をどのように処理するかを示しています。
if value=$(getconf PATH_MAX /usr) then if [ "$value" = "undefined" ] then echo The value of PATH_MAX in /usr is undefined. else echo The value of PATH_MAX in /usr is $value. fi else echo Error in the getconf command. fi - コマンドを次のように入力したとします。
getconf _XBS5_ILP32_OFF32書き込みを行わない-1\nまたはundefined\nを標準出力に出力し、次に次の形式のコマンドを入力します。
getconf -v XBS5_ILP32_OFF32 ...に対応する構成変数の値を決定します。XBS5_ILP32_OFF32c89、拡張記述で指定されたコンパイル環境。
- コマンドを次のように入力したとします。
getconf _XBS5_ILP32_OFFBIG書き込みを行わない-1\nまたはundefined\nを標準出力に出力し、次に次の形式のコマンドを入力します。
getconf -v XBS5_ILP32_OFFBIG ...に対応する構成変数の値を決定します。XBS5_ILP32_OFFBIGc89、拡張記述で指定されたコンパイル環境。
- コマンドを次のように入力したとします。
getconf _XBS5_LP64_OFF64書き込みを行わない-1\nまたはundefined\n「 を標準出力に書き出すと、| 形式のコマンドは次のようになります。
getconf -v XBS5_LP64_OFF64 ...このコマンドは、拡張記述である c89 に指定した XBS5_LP64_OFF64 コンパイル環境に対応する構成変数の値を判別します。
- コマンドを次のように入力したとします。
getconf _XBS5_LPBIG_OFFBIG書き込みを行わない-1\nまたはundefined\nを標準出力に出力し、次に次の形式のコマンドを入力します。
getconf -v _XBS5_LPBIG_OFFBIGこのコマンドは、拡張記述である c89 に指定した XBS5_LPBIG_OFFBIG コンパイル環境に対応する構成変数の値を判別します。
- root ユーザーとして、ディスク
hdisk0のディスク・サイズを判別するには、次のコマンドを入力します。getconf DISK_SIZE /dev/hdisk0 - 実メモリー・サイズを判別するには、次のコマンドを入力します。
getconf REAL_MEMORY - マシン・ハードウェアが 32 ビットであるか 64 ビットであるかを判別するには、次のコマンドを入力します。
getconf HARDWARE_BITMODE - カーネルが 32 ビットであるか 64 ビットであるかを判別するには、次のコマンドを入力します。
getconf KERNEL_BITMODE - ディスク
hdisk0のデバイス名またはロケーションを判別するには、次のコマンドを入力します。getconf DISK_DEVNAME hdisk0
ファイル
| 項目 | 説明 |
|---|---|
| /usr/bin/getconf | getconf コマンドが入っています。 |
| /usr/include/limits.h | システム構成変数を定義します。 |
| /usr/include/unistd.h | システム構成変数を定義します。 |