如何“取消本地化” bash 脚本输出

如何“取消本地化” bash 脚本输出

我对本地化的 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

相关内容