Ama*_*rus 4 bash command-line-interface
我有一个颠覆的文件夹结构。
有一大堆顶级目录只有一个子文件夹。(例如src/com/example)。通常,当我想 cd 进入示例文件夹时,我可以去,cd src/<tab><tab>因为 bash 会填写文件夹名称,因为每个文件夹只有一个,所以它一路走来。
但是,由于该目录结构现在在 svn 中,因此.svn每个目录中都有一个目录,这意味着我无法快速 cd。
如果我尝试cd src/<tab>它会建议.svn和com,而不是自动填写com.
有什么方法可以告诉 bash 永远不要建议 cd 进入 .svn 文件夹,这样如果我完成选项卡,它就不会包含.svn?
我可以给你两个选择。其中任何一个都可以放在你的~/.bash_profile.
Bash 使用一个变量$FIGNORE来定义自动完成将忽略的任何后缀。不过似乎有一个问题,因为它在任何值前加上*.. 所以设置:
export FIGNORE=.svn
Run Code Online (Sandbox Code Playgroud)
只会忽略在句点之前有内容的目录。和:
export FIGNORE=svn
Run Code Online (Sandbox Code Playgroud)
将忽略.svn目录和任何以.svn.
买者自负。
您可以防止自动完成中包含所有隐藏的文件和目录:
bind 'set match-hidden-files off'
Run Code Online (Sandbox Code Playgroud)
但你可能不觉得这合适。
| 归档时间: |
|
| 查看次数: |
1705 次 |
| 最近记录: |