[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
状況によっては,GNUのユーティリティの動作はPOSIXの標準と互換性
がありません.これらの非互換性を抑制するため,POSIXLY_CORRECT
環境
変数を定義してください.POSIX準拠を調査していない限り,
POSIXLY_CORRECT
を定義する必要はありません.
通常,オプションとオペランドは,任意の順序にすることが可能で,プログラム
はすべてのオプションがオペランドの前にあるかのように動作します.例えば,
`2'は`-C'のオプションの引数なので,`diff lao tzu -C 2'
は`diff -C 2 lao tzu'のように動作します.しかし,
POSIXLY_CORRECT
環境変数が設定されている場合,それ以外のオプション
が特定のコマンドに対して指定されていない限り,オプションはオペランドの前
にある必要があります.
新しいバージョンのPOSIXは,古いバージョンのものと互換性が無いものも あります.例えば,古いバージョンのPOSIXでは`diff -C 10'と同じ 意味を持つコマンド`diff -c -10'が利用可能ですが,POSIX 1003.1-2001の`diff'では,`-10'のような数字列のオプションを許 可していません.
GNUのユーティリティは通常,システム標準のPOSIXのバージョンに準
拠しています.異なるPOSIXのバージョンに準拠させるため,
_POSIX2_VERSION
環境変数を適用させる標準の年月を指定する
yyyymmの形式の値に設定してください.現在,_POSIX2_VERSION
に
対して二つの値がサポートされています.`199209'はPOSIX
1003.2-1992を意味し,`200112'はPOSIX 1003.1-2001を意味します.
例えば,古いバージョンのPOSIXを仮定する古いソフトウェアを実行し,
`diff -c -10'を使用している場合,環境変数で
`_POSIX2_VERSION=199209'を設定することで,互換性の問題を回避するこ
とが可能です.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |