zsh 如何找出 Debian 上当前安装的软件包,我该如何更新这些信息?运行 apt-get install 后,zsh 不会自动完成该软件包作为 apt-get purge 或 apt-get remove 的可能参数。我让它更新的唯一方法是运行一个新的 shell。我发现的所有技巧似乎都不起作用:rehash 甚至 rm ~/.zcompdump && compinit 都无济于事。
Bash 识别软件包的安装和删除,并相应地修改 apt-get remove/purge 的可能参数列表,无需任何用户交互。这是使用 Debian wheezy 上的默认配置。
使用 zsh 的默认配置,我根本无法获得 apt-get 的任何参数补全。我使用以下自定义 rc 来获得补全(带有上述警告):
自动加载-U compinit 复合体 评估`dircolors -b` PS1="%n@%M:%~ > " zstyle':completion:*'列表颜色$LS_COLORS
答案1
# auto rehash commands
# http://www.zsh.org/mla/users/2011/msg00531.html
zstyle ':completion:*' rehash true