You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何找到支持yyyy-mm-dd日期与24小时制时间的locale?

解决Locale日期时间格式问题的实用方案

哈哈,完全懂你的感受!默认的美式/加式日期时间格式确实让人抓狂,尤其是习惯了ISO标准的yyyy-mm-dd和24小时制之后。我来给你几个靠谱的办法,不用换掉整个locale就能搞定这个问题:

方法一:偷懒式快速解决(推荐)

直接用丹麦英语的locale,它默认就采用ISO日期格式和24小时制,完美匹配你的需求,而且其他英语环境的设置(比如数字、货币)也不会乱。

  • 临时生效(仅当前终端会话):
    在终端里输入:

    export LC_TIME="en_DK.UTF-8"
    

    输入date命令验证,应该会输出类似2024-05-20 16:42:15的格式。

  • 永久生效(所有终端会话):
    编辑你的shell配置文件(比如bash用~/.bashrc,zsh用~/.zshrc),添加一行:

    export LC_TIME="en_DK.UTF-8"
    

    保存后执行source ~/.bashrc(对应你的shell)让修改立刻生效,或者重启终端就行。

方法二:自定义专属Locale(进阶需求)

如果en_DK的locale还有其他你不满意的地方,可以自己定制一个基于en_CA的locale,只修改日期时间格式:

  1. 复制现有en_CA的locale配置文件:

    sudo cp /usr/share/i18n/locales/en_CA /usr/share/i18n/locales/en_CA_custom
    
  2. 编辑这个自定义文件,找到以下字段并修改:

    d_fmt      "%Y-%m-%d"       # 日期格式
    t_fmt      "%H:%M:%S"       # 时间格式
    dt_fmt     "%Y-%m-%d %H:%M:%S"  # 日期时间组合格式
    date_fmt   "%Y-%m-%d %H:%M:%S %Z"  # 带时区的完整格式
    
  3. 生成新的locale:

    sudo locale-gen en_CA.UTF-8_custom
    
  4. 设置LC_TIME为这个自定义locale:

    export LC_TIME="en_CA.UTF-8_custom"
    

    同样可以把这行加到shell配置文件里永久生效。

补充说明

第一种方法是最省心的,因为en_DK.UTF-8本身就是英语环境,只是日期时间遵循了ISO标准,完全不用自己折腾配置。而自定义locale适合有特殊需求的场景,比如还要调整其他格式细节。

内容的提问来源于stack exchange,提问作者stone1343

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:42:34