我想禁用区域设置失败警告以显示在命令行上 .
在system(aix)中,可用的语言环境是C,POSIX,en_US.8859-15,en_US.ISO8859-1,en_US
设置的语言是“EN_US”(导出$ LANG = EN_US),这在上面的列表中不可用 . 因为执行以下命令会抛出警告 . 如果语言是从上面的列表中设置的(导出$ LANG = en_US),它运行正常 .
# perl -X -e "print 'hello'"
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LC_ALL = (unset),
LC__FASTMSG = "true",
LANG = "EN_US"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C")
你好
我保留在perl脚本中的相同命令,它正在抛出相同的警告 . 我也使用了 $SIG(__WARN__)
,但上面的警告并没有在这里找到 . 但与未申报变量等有关的另一个警告正在赶上 . 一种解决方案是安装我所知道的不可用的语言环境,但是由于我的代码具有选择其他语言消息的逻辑,因此寻找禁用它 .
那么在屏幕上禁用这些警告的方法是什么?
1 回答
您可以将
PERL_BADLANG
环境变量设置为忽略这些警告,如perldoc perllocale #Temporarily Fixing Locale Problems中所述vs