perl: warning: Setting locale failed

前端之家收集整理的这篇文章主要介绍了perl: warning: Setting locale failed前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

运行某些perl 编写的脚本时 报如下错误


Theory

Locale is set of language/user input/keyboard characters specific to regions. For instance,"en_US" represents US english character set. It has to be set to correct value (en_US.UTF-8 or anything else,there are lots for different regions)for server to understand the character sequence keyboard input provides. "setlocale" enables the user to set the locale.

To read more on the theory of Locales,please divert here

export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure locales

What eventually worked for me

These two commands: 

执行下面这两行命令:

sudo locale-gen en_US.UTF-8 sudo dpkg-reconfigure locales

The error "bash: warning: setlocale: LC_ALL: cannot change locale (en_US)" occurs when the remote server does not understand the locale "en_US.UTF-8". The fix is to generate the locale using the command "sudo locale-gen en_US.UTF-8" and update the locale repository to store this locale,such that future connections(ssh) can understand this locale. The command "sudo dpkg-reconfigure locales" updates the local repository with the newly generated locale,i.e en_US.UTF-8.

在出现的界面选项中选择  en_US.UTF-8 (按空格选择和取消选择),enter回车,在默认选项中同样选择en_US.UTF-8,完成之后就没问题了。

猜你在找的Perl相关文章