输入错误命令,会报python的错误而不是bash的错误,有点令人费解
是因为Ubuntu的command not found提示程序(/usr/lib/command-not-found)是用python3.5写的,Ubuntu默认的python3(/usr/bin/python3)软链接到python3.5,所以没有修改python3软链接时是正常的。
然而,如果修改了python3的软链接到新版本(例如python3.6),再执行command not found就会发现一些包找不到(例如gdbm),从而报上面的错误。
一些针对这个问题的解决方法是安装新版本python缺失的包,例如:
sudo apt-get install python3.6-gdbm
这是治标不治本的,如果python3软链接到更新的版本,又需要重新安装,而且还可能缺失别的包。
参考文章:https://blog.youkuaiyun.com/Three_dog/article/details/102936769