在Ubuntu中(在命令行上)使用一个程序,例如“sar”没有安装,它告诉我哪个软件包包含这个程序。
user@comp ~$ sar
the program 'sar' can be found in the following packages
* sysstat
* atsar
Try: sudo apt-get install <selected package>
这是如何运作的?
答案 0 :(得分:0)
bash
shell使用一个名为command_not_found_handle()
的特殊用户定义函数。要查看bash如何使用此功能的说明,请键入info bash
并搜索“未找到” - 或read it online here。
在Ubuntu 14.04.3 LTS上,该函数在/etc/bash.bashrc
中定义,它作为bash
包的一部分安装。该函数调用/usr/lib/command-not-found
或/usr/share/command-not-found/command-not-found
。
如果您希望不出现此行为,可以使用以下命令:
unset command_not_found_handle
删除函数定义。