有没有办法强制* nix命令“date”以独立于本地的特定格式输出?例如,如果今天我打电话给“date -u”,我会在美国机器上得到:
Mon Oct 15 13:15:29 UTC 2012
但在德国的机器上我得到:
Mo 15. Okt 13:15:31 UTC 2012
当然,您可以自己指定格式:
date +%a, %b %d
或者您可以使用临时环境变量:
:~$ LC_ALL=de_DE.utf8 date
Mo 15. Okt 15:34:11 CEST 2012
:~$ date
Mon Oct 15 15:33:24 CEST 2012
如您所见,只有第一个命令与德语区域设置一起运行。
您可以修改date
运行的环境。我不知道这是否是最好的方法(区域设置处理中使用的变量很多),但以下工作:
$ LANG=de_DE date
Mo 15 Okt 2012 09:34:12 EDT
(一月左右,我把答案打到了这个答案,但我会留下我的答案,希望有些人会澄清哪个变量(LC_ALL
,LANG
,other)最“合适”。)
你试过以下吗? (我从日期手册页得到的)
# date -u +"%a %b %d %T %Z %Y"
世界标准时间:
date -u -R
本地:
date -R
首先,确保安装了目标语言环境的语言包。在Debian派生的GNU / Linux发行版中,荷兰语语言支持安装如下:
$ sudo apt-get install language-pack-nl
此命令将自动安装language-pack-nl-base
。这是我通过指定LC_TIME
得到的。这比使用LC_ALL
更具体。 (指定LANG
不适用于Xubuntu LTS。)
$ date '+%A %e %B %Y'
Friday 16 October 2015
$ LC_TIME='nl_BE.UTF-8' date '+%A %e %B %Y'
vrijdag 16 oktober 2015