我对本地化的 bash 输出有疑问。比如说,我必须在两台不同的机器上运行某个脚本,然后比较其输出。这本来可以用 grep 轻松完成,但其中一台机器已本地化,以俄语提供 bash 输出。因此,“Apr”变成了“Апр”,否则完全相同的字符串会变得不同。
我不想直接处理本地化,因为它通常很有用;但运行一个完全未本地化的特定脚本会很好。
问题是,我怎样才能做到这一点?
答案1
相应地设置所需的LC_*
变量。
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
会将这些脚本中所有程序的输出设置为en_US.utf-8
。
或者您甚至可以使用名为 的“默认”语言环境C
。
答案2
据我所知你不能。但你可以做的是将脚本中的 LANG 变量设置为你想要的区域设置。我认为使用 POSIX 默认区域设置是个好主意:
export LANG=C