当我发出命令时:
ls -l
文件/目录修改时间戳列(特别是月份部分)以我所在国家/地区的母语显示,而不是英语。
我怎样才能强制ls
在该专栏中使用另一种“文化”?
例子:
答案1
使用区域设置环境变量,例如LANG
或LC_ALL
:
LANG=C ls -l
这样,只有当前ls
实例使用另一个区域设置。您还可以在整个会话中更改它:
export LANG=C
ls -l
阅读man 7 locale
详情。用于locale -a
列出您可以选择的可能区域设置。
答案2
日期格式由区域设置决定LC_TIME
。如果LC_TIME
未设置,则LANG
应用默认设置。另外,如果你LC_ALL
设置了,它会胜过所有其他设置,如果你设置了LANGUAGE
,它甚至会胜过LC_ALL
。
在您的.profile
或其他设置环境变量的文件中,根据需要更改区域设置。如果您想要默认的英语设置,请取消设置除LC_CTYPE
指示字符集之外的所有区域设置变量。例如,要在各处使用英语和 UTF-8 字符集,您可以将其放入您的~/.profile
:
unset LANG LC_ALL LANGUAGE
unset LC_COLLATE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME
export LC_CTYPE=en_US.UTF-8