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

Kim*_*cks 6 ubuntu .bash-profile

我问了一个关于如何在bash shell中编写一个漂亮优雅的linux命令的问题

当我尝试这个建议时,我收到以下错误消息.

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
Run Code Online (Sandbox Code Playgroud)

这是我目前在.bashrc中编写的内容

source .bashrc
export LC_CTYPE="utf-8"
function go_app() { cd /var/virtual/$1/; }
Run Code Online (Sandbox Code Playgroud)

这是我的/ 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
Run Code Online (Sandbox Code Playgroud)

编辑:

新的.bashrc

export LC_CTYPE="en_US.utf8"
function go_app() { cd /var/virtual/$1/; }
Run Code Online (Sandbox Code Playgroud)

错误信息:

go_app: command not found
Run Code Online (Sandbox Code Playgroud)

小智 13

A bad WSL upgrade messed up some of my file permissions. None of the above things worked for me, but this did:

sudo chmod o+r /var/lib/command-not-found/commands.db
Run Code Online (Sandbox Code Playgroud)


Yah*_*oui 9

这应该修复"抱歉,命令未发现已崩溃!..."问题:

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
Run Code Online (Sandbox Code Playgroud)


Saj*_*med 5

如果上述任何解决方案不起作用,则意味着“command-not-found”实用程序本身配置错误。

只需删除该实用程序,

sudo apt purge command-not-found
Run Code Online (Sandbox Code Playgroud)

并再次安装,

sudo apt install command-not-found
Run Code Online (Sandbox Code Playgroud)

  • 这对我有用,但它还需要在安装后执行“sudo rm -rf /var/lib/command-not-found”和“sudo apt update”。 (3认同)

Rob*_*een 1

您尝试过更改export LC_CTYPE="utf-8"为吗export LC_CTYPE="en_US.utf8"?后者引用了我的系统上的有效区域设置名称。您可以通过运行来查看系统上的有效区域设置名称locale -a