我尝试在.bashrc中添加命令时找不到命令

时间:2013-11-09 07:12:40

标签: ubuntu .bash-profile

我在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

5 个答案:

答案 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*
>----------------------------------------------------^