手册页部分 1: 用户命令

退出打印视图

更新时间: 2014 年 7 月
 
 

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 环境中派生消息目标文件名。如果未指定任何域,或无法找到对应的字符串,则 gettext 会输出 msgid

通常,gettext/usr/lib/locale/lang/LC_MESSAGES 中查找其消息目标文件,其中 lang 是语言环境名称。如果已提供,TEXTDOMAINDIR 环境变量会将路径名组件替换为 lang

此命令解释 C 语言中的转义序列(例如将 \t 解析为制表符 (tab))。使用 \\ 输出反斜杠。要一行生成一条消息,可在 msgid 的末尾输入 \n,或将此命令与 printf(1) 结合使用。

–s 选项一起使用时,gettext 的行为与 echo(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(5)

属性类型
属性值
可用性
system/core-os

另请参见

echo(1)msgfmt(1)printf(1)gettext(3C)setlocale(3C)attributes(5)

附注

该实用程序是库例程 gettext(3C) 的 shell 等效项。