【发布时间】:2011-03-19 23:55:05
【问题描述】:
我刚刚从 Bash 迁移到 Zsh,但我遇到了一些问题。在 Ubuntu 系统上的 bash 中,当我键入一个不存在的命令的名称时,Bash 会在 apt 数据库中搜索匹配的命令名称并打印出提供该命令的包名称。这是一个非常有用的功能,所以我想知道是否可以使用脚本或其他东西在 Zsh 中实现类似的功能?
这是一个例子:
$>xmms2
The program 'xmms2' is currently not installed. You can install it by typing:
sudo apt-get install xmms2-client-cli
或者如果命令不完全匹配:
$>xmms
No command 'xmms' found, did you mean:
Command 'lmms' from package 'lmms' (universe)
Command 'xmms2' from package 'xmms2-client-cli' (universe)
Command 'xmds' from package 'xmds' (universe)
Command 'xdms' from package 'xdms' (universe)
【问题讨论】:
-
属于 superuser.com
-
啊,抱歉,我是新来的 :)
-
@Paul R 如果这个包不存在,那么这不是一个编程问题吗? @gastly,如果您找到执行此技巧的脚本的来源,我可以将其移植到 zsh。
-
@ZyX 我找到了解决方案,该功能位于 Ubuntu 中名为“command-not-found”的包中。我只需要将文件“/etc/zsh_command_not_found”中的包和源安装到我的 zshrc 中:)
-
@gastly,您能否将您的解决方案写为答案并接受它,以便知道该问题有正确答案?目前它仍然出现在各种未回答的问题列表中。