POSIXは、テキストファイルと連携する、、grep
などawk
のsed
ツールの動作を定義します。テキストファイルなので、文字エンコードの問題があるとします。
質問:
- POSIXはどの文字エンコーディングをサポートしていますか? (またはPOSIX互換システムが処理できるテキストファイルのエンコーディングは何ですか?)
ベストアンサー1
POSIXは特定の文字エンコーディングを必要としません。固定位置にある唯一の文字はNULL文字で、00でなければなりません。
すべてのPOSIX要件は、すべての文字がポータブル文字セット存在する。移植可能な文字セットには、印刷可能なASCII文字、スペース、BEL、バックスペース、タブ、キャリッジリターン、改行、垂直タブ、フォームフィード、およびヌルが含まれます。以下の場合を除き、これらのエンコーディングの場所や方法は指定されません。
- それぞれはシングルバイト(8ビット)です。
- Nullは、すべてのビットがゼロであるとマークされます。
- 0から9までの数字がこの順に連続して表示されます。
文字表現に他の制限を設けないため、規格に準拠したシステムは、これらの文字だけでなく、他の文字の表現を使用してエンコードを自由にサポートできます。
.
/
同じシステムの異なるロケールは、およびを除いてこれらの文字を異なる方法で表現できます。
アプリケーションが文字エンコーディングの異なるロケールペアを使用する場合、またはアプリケーションが使用するロケールとエンコードの異なるロケールを使用してアプリケーションのデータにアクセスする場合、結果は指定されません。
すべてのPOSIX互換システムが同じ方法で処理する必要がある唯一のファイルは、完全にヌルバイトで構成されたファイルです。テキストとみなされるファイルはPCS改行文字のエンコードされた表現で終わる行。