Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 pppoe-setup 文件上浏览了一个预先编写的 shell 脚本。我在其中遇到了以下几行,无法理解为什么要使用它。请解释一下。
# Set to "C" locale so we can parse messages from commands LANG=C export LANG CONFIG=/etc/ppp/pppoe.conf
注释准确地说明了使用它的原因:脚本需要解析来自其他命令的消息。如果语言环境不固定,那么脚本必须理解所有可能的语言、所有可能的日期和数字格式等的消息。这是一项艰巨的任务。
因此,他们将语言环境强制设置为“C”,并且只处理这些消息的一种翻译,并且只处理一种日期和数字格式。
(这仍然有点脆弱,因为消息可能会因版本而异,但比尝试理解所有可能的语言和所有其他输出格式变体要好得多。)