Ubuntu的新版本(应该是从feisty开始的)有个特性,在bash下输入不存在的命令时,会自动搜索返回一个匹配的package提示给用户,并告之只需要apt-get install xxx就可以得到这个命令,看起来很酷是吧,我注意到这个特性的时候也觉得这是个易用性上的巨大提高。这个特性是由一个command-not-found的包提供的(python实现的哦)。
然而,现在我已经逐渐受不了这个特性了,因为大部分情况下,命令找不到是因为我错误的输入导致的(有时我的错误率还满高的),而这个command-not-found都会自作主张的去替我查找一番,这未免有些太主动了,而它的主动有直接导致了错误命令要很久才能响应,为了在输入命令时能快速响应,我编辑了/etc/bash.bashrc,注释了下面的语句:
# if the command-not-found package is installed, use it
#if [ -x /usr/lib/command-not-found ]; then
# function command_not_found_handle {
# /usr/bin/python /usr/lib/command-not-found -- $1
# return $?
# }
#fi
重启一个bash,就回到了快速响应的世界了,如果还想找一下命令在哪个package里,可以简单的直接使用
/usr/lib/command-not-found commandname
来找到package,就是有些奇怪,这么好的命令干吗丢在/usr/lib下,搞的路径还要输进去才能执行。
1 条评论:
不懂命令怎么会输错呀, 不是用tab的?
我觉得这个功能很好:)
发表评论