bash - 如何制作自定义 BASH 函数以自动完成 cd 到特定目录

标签 bash function

我的项目在 ~/Documents/EP_example_project 中命名方案。他们都住在~/Documents下.

我想创建一个 bash 函数,允许我从系统上的任何位置 cd 进入项目目录;自动完成。像这样:

cdp E<tab>
# ... EAP_example_additional_project EP_example_project
P<tab>
# prompt now says:
cdp EP_example_project<enter>
# ... And I am in the project-directory.

这会比输入 cd ~/Do<tab>EP<tab> 容易一些每次。

我知道创建简单函数的基础知识,但找不到如何为其添加制表符自动完成功能。

注意:虽然上面的推理没有什么意义:额外的 ~/Do 不是那么太多的开销,它是我可以在这样的函数中做的额外的事情,比如打印某个特定的内容如果找到文件 (.birdseye),列出项目内容、上次访问日期等,这会让这在未来变得更有趣。

最佳答案

你可以考虑CDPATH .您可以 export CDPATH=~/Documents 以添加 ~/Documents 下的所有目录以进行自动完成。您可以为此导出命令设置函数或别名,并在需要时设置和取消设置 CDPATH
希望这对您有所帮助!

关于bash - 如何制作自定义 BASH 函数以自动完成 cd 到特定目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8644128/

相关文章:

bash - 动态提取 bash 中字符串列表中每个字符串唯一的模式

bash - 使用bash和sed如何从主机名命令中提取ip并将其保存在/etc/hosts文件中

javascript - 当点击标题时,让信息显示在另一个div上的信息?

javascript - 将参数传递给函数

php运行shell脚本

bash - 用 awk 对重复的行值求和

bash - 为什么我要做 Cmake .. 并制作?

c - C中字符串文字的"Life-time"

python - 如何绘制给定函数 f(x) 的基于文本的图形?

javascript - 在函数中引用(this)