今天由于某种原因,每当我在终端中单击选项卡时,都会显示以下内容:
cat bash: warning: setlocale: LC_CTYPE: cannot change locale (en_CA)
Display all 150 possibilities? (y or n)
当我键入cat
然后按TAB 时,就会发生这种特殊情况。我从未更改任何设置或任何内容。有人知道发生了什么吗?
locale
命令的输出吗?
ssh
或putty
。
今天由于某种原因,每当我在终端中单击选项卡时,都会显示以下内容:
cat bash: warning: setlocale: LC_CTYPE: cannot change locale (en_CA)
Display all 150 possibilities? (y or n)
当我键入cat
然后按TAB 时,就会发生这种特殊情况。我从未更改任何设置或任何内容。有人知道发生了什么吗?
locale
命令的输出吗?
ssh
或putty
。
Answers:
我有一种预感,就是您的bash_completion引起了这种情况。尝试通过以下方式临时清除bash的完成(直到退出):
complete -r
如果可以清除它,则说明bash已完成,否则,它可能仍是bash内置的一种
我在ubuntu服务器(FlexiScale)上遇到了类似的问题,并搜索了一段时间的解决方案,但找不到任何合适的解决方案。
我看到的警告是:
bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8)
为了确保语言环境是最新的,我这样做(不确定是否有必要):
# locale-gen --purge
locale
我的系统上显示的LC_CTYPE="UTF-8"
内容对我来说不合适,因此我将其更改/etc/default/locale
为以下形式:
LANG="en_GB.UTF-8"
LC_CTYPE="en_GB.UTF-8"
(我添加了第二行。)重新登录后,警告消失了。
LC_CTYPE
为有效值即可。您不需要LANG
(事实上,我建议您反对)。您可以通过运行在系统上查看有效的语言环境名称locale -a
。在Ubuntu上,运行sudo localegen xx_YY
以生成xx_YY
语言环境(假定可以生成)。
如果在按Tab键进行bash命令自动完成时收到类似于此的错误/警告消息:
bash: warning: setlocale: LC_CTYPE: cannot change locale (id_ID.UTF-8)
解决方法是:
安装所需的语言环境。就我而言,这是“ id”:
sudo apt-get install language-pack-id
重新配置语言环境:
sudo dpkg-reconfigure locales
现在,bash Tab完成应该可以正常工作。:-)
来源:http : //ubuntucomputing.blogspot.com/2011/12/how-to-fix-error-bash-warning-setlocale.html
en_CA
(即加拿大英语),你预计将在一个区域?