安装包时自动更新 bash-completion

安装包时自动更新 bash-completion

安装软件包时,我在尝试自动更新当前 bash 会话中的 bash 完成时遇到问题。

我的包安装了完成文件,/usr/share/bash-completion/completions/但完成对于安装包的会话不起作用(带有dpkg - i

我尝试运行. /path/to/the/file,甚至. /etc/profile在脚本中也postinst无济于事。

我怎么能这样做呢?

答案1

您的软件包无法自行执行此操作,因为它无法访问启动安装的 shell(如果有)的环境。当您尝试在 中加载新的完成时postinst,这只影响正在运行的 shell 实例postinst,并且与用户的 shell 实例不同。

您的完成仅在安装后启动的 shell 中可用,对此您无能为力(合理)。希望立即完成新的完成而不启动新 shell 的最终用户必须运行

. /usr/share/bash-completion/bash_completion

手动。

相关内容