我在how to write a beautifully elegant linux command in bash shell
问了一个问题当我尝试这个建议时,我收到以下错误消息。
Sorry, command-not-found has crashed! Please file a bug report at:
https://bugs.launchpad.net/command-not-found/+filebug
Please include the following information with the report:
command-not-found version: 0.3
Python version: 3.2.3 final 0
Distributor ID: Ubuntu
Description: Ubuntu 12.10
Release: 12.10
Codename: quantal
Exception information:
unsupported locale setting
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/CommandNotFound/util.py", line 24, in crash_guard
callback()
File "/usr/lib/command-not-found", line 69, in main
enable_i18n()
File "/usr/lib/command-not-found", line 40, in enable_i18n
locale.setlocale(locale.LC_ALL, '')
File "/usr/lib/python3.2/locale.py", line 541, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting
这是我目前在.bashrc
中写的内容source .bashrc
export LC_CTYPE="utf-8"
function go_app() { cd /var/virtual/$1/; }
这是我的/ var / www目录
www-data@ubuntu:~$ ls -la
total 52
drwxr-xr-x 5 www-data www-data 4096 Nov 9 15:03 .
drwxr-xr-x 15 root root 4096 Nov 8 09:51 ..
-rw------- 1 www-data www-data 19657 Nov 7 23:24 .bash_history
-rwxr-xr-x 1 www-data www-data 82 Nov 9 15:03 .bashrc
drwx------ 2 www-data www-data 4096 Aug 7 19:28 .cache
drwxrwxr-x 3 www-data www-data 4096 Aug 9 19:19 .composer
-rw------- 1 www-data www-data 6 Aug 8 11:48 .mysql_history
-rw------- 1 root root 50 Nov 9 15:08 .nano_history
drwxrwxr-x 2 www-data www-data 4096 Aug 7 20:19 .ssh
修改
新的.bashrc
export LC_CTYPE="en_US.utf8"
function go_app() { cd /var/virtual/$1/; }
错误讯息:
go_app: command not found
答案 0 :(得分:6)
这应该可以修复"抱歉,命令 - 未找到已经崩溃了!..."问题:
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
sudo dpkg-reconfigure locales
答案 1 :(得分:3)
如果以上任何解决方案均无效,则意味着“ command-not-found”实用程序本身配置错误。
只需删除该实用程序,
sudo apt purge command-not-found
然后重新安装
sudo apt install command-not-found
答案 2 :(得分:1)
您是否尝试将export LC_CTYPE="utf-8"
更改为export LC_CTYPE="en_US.utf8"
?后者在我的系统上引用了有效的区域设置名称。您可以通过运行locale -a
来查看系统上的有效区域设置名称。
答案 3 :(得分:1)
错误的WSL升级弄乱了我的某些文件权限。以上这些都不对我有用,但这确实做到了:
sudo chmod o+r /var/lib/command-not-found/commands.db
答案 4 :(得分:0)
最后带星号会更好:
sudo chmod o+r /var/lib/command-not-found/commands.db*
>----------------------------------------------------^