将命令输出语言从本地语言切换到英语

如何将命令输出语言从我的母语切换为英语,因此我可以使用英语命令输出(错误消息)发布我的Ask Ubuntu问题?

export LC_ALL=C就够了。 所有后续命令输出均为英文。

更多信息: “LC_ALL = C”有什么作用?

如果要还原为本机语言,请取消设置LC_ALL变量:

 unset LC_ALL 

终端的bashfunction

这是我的bash函数,用于在DE和EN语言环境之间切换。

您可以使用首选语言扩展此代码。 要使用它,请将它放在~/.bashrc (或~/.bash_profile )中 –

使用_configure_locale EN调用它以切换到英语。

 function _configure_locale() { # [profile] local profile=${1:-EN} case ${profile} in DE|DE_DE|de_DE) LC_ALL="de_DE.UTF-8" LANG="de_DE.UTF-8" LANGUAGE="de_DE:de:en_US:en" ;; EN|EN_US|en|en_US) LC_ALL="en_US.UTF-8" LANG="en_US.UTF-8" LANGUAGE="en_US:en" ;; *) echo "ALERT" "${FUNCNAME}: unknown profile '${profile}'" ;; esac LC_PAPER="de_DE.UTF-8"; # independent from locale LESSCHARSET="utf-8"; # independent from locale MM_CHARSET="utf-8" # independent from locale echo "locale settings" "${LANG}"; export LC_ALL LANG LANGUAGE LC_PAPER LESSCHARSET MM_CHARSET } 

一般情况下,我建议更改所有3个环境变量LC_ALLLANGLANGUAGE以避免某些程序的行为不当。

适应您的语言

将代码扩展到您的母语非常简单。 您可以通过调用以下命令找到所需的值

 env |egrep -e 'LC_ALL|LANG' 

打开终端Ctrl + Alt + T并键入:

 LANG=en_US.UTF-8 bash 

或者 :

 LC_ALL=C bash 

现在终端输出是英语。 您可以使用locale进行检查。

可以使用永久alias发出命令。 使用首选编辑器打开.bashrc文件,并在其中放入以下代码:

 alias basheng='LANG=en_US.UTF-8 bash' 

或者 :

 alias basheng='LC_ALL=C bash' 

重启Bash shell。 现在你有命令basheng 。 在Bash中键入它以获取英语Bash shell。 离开英语shell类型exit

资源:

  • 更改Linux(BaSH)Shell中的语言
  • 导出LC_ALL = C.
  • 创建永久可执行别名

这是通过区域设置配置的,可以通过环境变量进行设置。 有四层变量; 设置的第一个优先:

  • LANGUAGE – 不要使用它,它很少有用,可能会导致错误。 不幸的是,某些版本的Ubuntu设置了它,所以你可能需要取消它。
  • LC_ALL – 覆盖特定于类别的设置,主要用于希望在默认语言环境中运行的程序。 不打算用作全局设置。
  • LC_开头的类别特定变量: LC_CTYPELC_MESSAGESLC_TIME ,….
  • LANG – 设置所有类别的默认语言环境,用于全局用户设置。

“普通”语言环境,所有消息都未翻译,默认时间和数字格式,ASCII作为字符集等,称为C 此区域设置存在于每个系统上。

因此,要运行带有英文消息的程序,请运行

 unset LANGUAGE; LC_MESSAGES=C myprogram --option 

要么

 unset LANGUAGE export LC_MESSAGES=C myprogram --option myotherprogram 

要运行已关闭所有本地化的程序,请运行

 env -u LANGUAGE LC_ALL=C myprogram --option 

但请注意,这会将字符编码切换为ASCII(因此没有Unicode,latin-1等)。

请参阅我应该将我的区域设置设置为什么以及这样做的含义是什么? 有关区域设置的更详细概述。

最简单的方法是按Alt + F2并运行此命令打开终端:

 env LANGUAGE=en gnome-terminal 

在你的~/.bashrc

 unset LC_ALL export LC_MESSAGES=C 

然后

 source ~/.bashrc 

核实

 $ locale LANG=pl_PL.utf8 LANGUAGE= LC_CTYPE="pl_PL.utf8" LC_NUMERIC="pl_PL.utf8" LC_TIME="pl_PL.utf8" LC_COLLATE="pl_PL.utf8" LC_MONETARY="pl_PL.utf8" LC_MESSAGES=C LC_PAPER="pl_PL.utf8" LC_NAME="pl_PL.utf8" LC_ADDRESS="pl_PL.utf8" LC_TELEPHONE="pl_PL.utf8" LC_MEASUREMENT="pl_PL.utf8" LC_IDENTIFICATION="pl_PL.utf8" LC_ALL= 

为什么先取消?

LC_ALL覆盖单个LC_ *设置:如果设置了LC_ALL,则以下都不会产生任何影响。

https://help.ubuntu.com/community/Locale

  1. 单击左侧的齿轮图标(Unity面板上的系统设置)
  2. 单击语言支持
  3. 选择区域格式
  4. 将“显示数字,日期和货币金额……”设置为英语。
  5. 注销会话并再次登录(必填!)

完成。