Bash的不完整路径扩展(完成)
bash完整部分路径 通过添加不完整的路径扩展(类似于Zsh)来增强Bash中的路径完成(在Linux,带有gnu-sed的macOS和Windows上具有MSYS的情况下),如果您希望在Bash中使用此省时的功能而无需切换到sh
这是这样的。 Tab
按下键,bash-complete-partial-path假定每个组件都不完整并尝试扩展它。假设您要导航到 /usr/share/applications
您可以输入 cd /u/s/app
,按 Tab
,并且bash-complete-partial-path应该将其扩展为 cd /usr/share/applications
如果存在冲突,则在按下时仅完成没有冲突的路径 Tab
例如,Ubuntu用户应该在其中有很多文件夹 /usr/share
以“ app”开头的内容,在这种情况下,键入 cd /u/s/app
只会扩大 /usr/share/
部分。
这是更深的不完整文件路径扩展的另一个示例。在Ubuntu系统上 cd /u/s/f/t/u
,按 Tab
,它应该会自动扩展到cd /usr/share/fonts/truetype/ubuntu
。
功能包括:
- 转义特殊字符
- 如果用户使用引号开始路径,则不使用转义字符,而是在路径扩展后用匹配的字符关闭引号
- 适当扩展
~
表达 - 如果已经使用了bash-completion软件包,则此代码将安全地覆盖其_filedir函数。不需要任何额外的配置,只需确保在主bash-completion之后获取该项目。
看看 项目页面 有关更多信息和演示截屏视频。
更新:bash-complete-partial-path现在支持一些自定义,例如可以选择仅完成目录路径,使完成不区分大小写,启用颜色等。 在这里。
安装bash-complete-partial-path
bash-complete-partial-path安装说明指定直接下载bash_completion脚本。我更喜欢使用Git存储库,因此可以通过简单的方式对其进行更新 git pull
,因此以下说明将使用这种安装bash-complete-partial-path的方法。您可以使用 官方的 说明,如果您喜欢它们。
1.安装Git(需要克隆bash-complete-partial-path Git存储库)。
在Debian,Ubuntu,Linux Mint等中,使用以下命令安装Git:
sudo apt install git
2.在中克隆bash-complete-partial-path Git存储库 ~/.config/
:
cd ~/.config && git clone https://github.com/sio/bash-complete-partial-path
3.来源 ~/.config/bash-complete-partial-path/bash_completion
在你的 ~/.bashrc
文件,
使用文本编辑器打开〜/ .bashrc。例如,您可以使用Gedit:
gedit ~/.bashrc
在末尾 ~/.bashrc
文件添加以下内容:
if [ -s "$HOME/.config/bash-complete-partial-path/bash_completion" ]
then
. "$HOME/.config/bash-complete-partial-path/bash_completion"
_bcpp --defaults
fi
我提到在文件末尾添加它,因为这需要包含在您的主要bash补全下面(之后) ~/.bashrc
文件。因此请确保不要将其添加到原始bash-completion上方,否则会引起问题。
4.来源 ~/.bashrc
:
. ~/.bashrc
完成后,bash-complete-partial-path现在应该已安装并可以使用。顶部的bash徽标来自 维基百科。