如何将en_AU语言环境更改为12小时格式?

我注意到en_AU语言环境默认为24小时,应该是12小时,因为这是澳大利亚最常用的。

怎么调整呢?

Rohit提供的链接有答案,而且它是一个很好的链接 (我自己使用它,并赞成它)。 然而,本着这种精神,特别是在Rohit提供的链接消失的情况下,我将完整地写出答案。

注意:这应该仍然被认为是Rohit的答案; 我只是把它转移给后人。

如Mitch所说,实现所需function的一种方法是将您的语言环境更改为使用您想要的时间格式的语言环境。 但是,这可能需要获得您不感兴趣的其他更改(Rohit的文章对此有更多了解)。

更有选择性地,您可以使用所需的格式创建自定义区域设置定义文件,如下所示:

  1. 将目录更改为/ usr / share / i18n / locales: cd /usr/share/i18n/locales

    该目录包含区域设置文件。 文件名的格式为 _ ,其中ll是语言代码(例如,英语为’en’),CC是国家代码(例如美国为US或AU为澳大利亚)。 我的想法是定制你已经使用的那个(例如,原始海报可能是en_AU – 我将以此为例)。

  2. 将现有文件复制到新文件(这样您就不会丢失原始设置):

    sudo cp en_AU en_AU_custom

    您需要使用sudo因为它是root权限文件。

  3. 检查date命令的手册,以确切了解您的时间显示所需的格式:

    man date

    手册说:

    %r locale's 12-hour clock time (eg, 11:11:04 PM)

    我将用于这个例子。 要使用其他格式,请相应地调整以下说明。

  4. 将格式文本转换为Unicode。 您可以从http://unicode-table.com/en/这样的站点查找每个字符的Unicode等效项,它告诉我们%r

  5. 使用您喜欢的编辑器(示例中的gedit)编辑您的新文件(您在步骤2中创建的文件)。 它仍然是root权限文件,因此您仍然需要使用sudo

    sudo gedit en_AU_custom

  6. 找到标记为LC_TIME的部分,在其中,以t_fmt开头的行,表示时间格式。

  7. 将格式更改为与您的首选时间格式等效的unicode,确保将其放在引号中。 对于此示例,该行应如下所示:

    t_fmt ""

    保存文件并退出文本编辑器。

    您现在在您创建的文件中有一个自定义区域设置(上en_AU_custom中的en_AU_custom )。

  8. 使用localedef命令将新的语言环境文件编译为系统可读的语言环境定义(如果您使用了与示例不同的文件名,请确保替换自己的文件名):

    sudo localedef -f UTF-8 -i en_AU_custom en_AU_custom.UTF-8 ↑ ↑ ↑ charmap your file locale definition name

    现在,新的自定义区域设置可供系统使用。

  9. 配置系统以使用新的自定义区域设置:

    a)编辑文件/ etc / environment:

    sudo gedit /etc/environment

    b)添加(或者,如果存在,修改)定义用于时间/日期的区域设置的行(在步骤9中创建的文件):

    LC_TIME="en_AU_custom.UTF-8"

    保存文件并退出文本编辑器。

  10. 注销并重新登录以查看正在应用的新格式。

注意:您可以使用相同的过程来修改日期/时间格式( d_t_fmt ),日期格式( d_fmt ),上午/下午格式( am_pm ),标准12小时表示法( t_fmt_ampm )以及许多其他语言环境设置。

点击屏幕顶部栏上的符号,显示时间并点击。 转到“时间和日期设置”(或类似)。 将弹出设置屏幕。 选择“时钟”标签。

或者,转到“系统设置”,然后选择“时间和日期”,然后选择“时钟”选项卡。

您现在可以选择12到24小时的一天。

怎么做

使用上面的链接重新启动自定义。 像之前的上一期一样检查此解决方案

检查您当前具有的默认区域设置

只需按键盘上的Ctrl + Alt + T即可打开终端。 打开时,运行以下命令。

 locale 

与大多数Linux发行版相比,在Ubuntu上更改默认语言环境略有不同,这些是我们需要更改它的步骤点击此处

Interesting Posts