Go to main content

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

印刷ビューの終了

更新: 2018年8月8日
 
 

gettext(1)

名前

gettext - メッセージデータベースからのテキスト文字列の取得

形式

gettext [-d textdomain | --domain=textdomain] 
     [textdomain] msgid
gettext -s [-e] [-n] 
     [-d textdomain | --domain=textdomain] msgid...

説明

gettext ユーティリティーは、msgfmt(1) で生成されたメッセージオブジェクトから、文字列 msgid に対応する変換されたテキスト文字列を取得します。メッセージオブジェクト名は、省略可能な引数 textdomain が存在する場合はその引数から、それ以外の場合は TEXTDOMAIN 環境変数から決定されます。ドメインが指定されていない場合や、対応する文字列が見つからない場合、gettextmsgid を出力します。

通常、gettext/usr/lib/locale/lang/LC_MESSAGES 内でメッセージオブジェクトを探します。ここで、lang はロケール名です。存在する場合は、TEXTDOMAINDIR 環境変数によって、パス名のコンポーネントが lang に置き換えられます。

このコマンドは、タブに対する \t などの C エスケープシーケンスを解釈します。バックスラッシュを出力するには、\\ を使用します。独自の行にメッセージを生成するには、msgid の最後に \n を入力するか、またはこのコマンドを printf(1) とともに使用します。

–s オプションとともに使用された場合、gettextecho(1) のように動作します。ただし、引数を単純に標準出力にコピーするわけではありません。代わりに、選択されたカタログ内にあるメッセージが変換されます。

オプション

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

–d textdomain
–-domain=textdomain

textdomain がオペランドとして指定されていない場合は、ドメイン textdomain から変換されたメッセージを取得します。

–e

–s オプションとともに使用されている場合は、一部のエスケープシーケンスの展開を有効にします。

–n

–s オプションとともに使用されている場合は、末尾の復帰改行を抑止します。

–s

echo(1) のように動作します (上の「機能説明」を参照)。–s オプションが指定されている場合、デフォルトでは、C エスケープシーケンスの展開は実行されず、出力に改行文字が付加されます。

オペランド

次のオペランドがサポートされています。

textdomain

メッセージを取得するために使用されるドメイン名。これにより、–d または –-domain オプション (存在する場合) によって指定がオーバーライドされます。

msgid

ローカライズされたメッセージを取得するための鍵。

環境変数

LANG

ロケール名を指定します。

LC_MESSAGES

メッセージングのロケールを指定し、存在する場合はメッセージの LANG をオーバーライドします。

TEXTDOMAIN

テキストドメイン名を指定します。これは、.mo サフィックスのないメッセージオブジェクトファイル名と同じです。

TEXTDOMAINDIR

メッセージデータベースへのパス名を指定します。存在する場合は、/usr/lib/locale を置き換えます。

属性

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

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

関連項目

echo(1), msgfmt(1), printf(1), gettext(3C), setlocale(3C), attributes(7)

これは、ライブラリルーチン gettext(3C) と等価なシェルです。