`
hunk
  • 浏览: 757 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Bash AutoCompletion中对CVS文件夹进行过滤

阅读更多
java开发中,经常可以看到如下的目录结构:
src/com/
        CVS/
           comp1/
                CVS/ 
                xxx/
                    CVS/
                    AAA.java



在使用linux命令时经常因为CVS目录的存在而不能自动完成。

hunk@elf:~/test/src$ cd [TAB]
com/ CVS/




解决方案:
修改 ~/.bashrc, 找到以下代码:

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi



在 if block 中加入下面一行命令:

complete -o filenames -o nospace -F _cd -X '?(*/)CVS' cd

修改后的代码如下:
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
    complete -o filenames -o nospace -F _cd -X '?(*/)CVS' cd
fi


还可以根据需要,对其他命令也进行过滤,例如对ls 和cd 两个命令进行过滤:
    complete -o filenames -o nospace -F _cd -X '?(*/)CVS' cd ls
对于vi用以下命令进行过滤:
 complete -f -d -X '?(*/)CVS' vi   

分享到:
评论

相关推荐

    bash过滤字符串的命令介绍

    在Linux系统中,Bash shell提供了一系列强大的命令来处理字符串,这些命令包括grep、sed、cut等。本文将详细介绍这些命令的功能、参数及其使用方法。 首先,让我们来看看grep命令。grep全称为Global Regular ...

    安装使用CVS

    #### 三、将代码放入CVS中进行版本控制 1. **初始化CVS仓库:** - 创建一个新的目录作为CVS仓库,并初始化: ```bash mkdir my_project_cvs_repo cd my_project_cvs_repo cvs init ``` 2. **导入代码到CVS...

    cvs最简单的使用方法

    CVS支持创建分支进行并行开发,使用`cvs branch`和`cvs merge`命令。当你在分支上完成工作后,可以将更改合并回主分支。 ```bash # 创建分支 cvs branch -b my_branch # 切换到分支 cvs checkout -r my_branch # ...

    Linux下把多个子目录中的源代码添加到CVS仓库的Bash脚本

    通过阅读和学习这些脚本,你可以更深入地了解如何结合Bash和CVS进行版本控制操作,这对于开发者来说是一项非常实用的技能。 在开发过程中,版本控制系统(如CVS、Git等)的重要性不言而喻,它们帮助团队协作,追踪...

    Bash参考手册.pdf

    Bash参考手册.pdf是Bash shell的官方参考手册,涵盖了Bash shell的所有方面,包括基本语法、变量、命令、函数、文件处理、流程控制、输入输出、错误处理等。 1. Bash简介 Bash是GNU项目的一部分,是自由软件基金会...

    如何在myeclipse中把工程共享到部署在红旗linux中的cvs服务器中.txt

    在红旗Linux系统中安装CVS服务器,首先需要通过包管理器进行安装。通常情况下,可以使用`yum`或`apt-get`命令来完成。例如,在基于Red Flag Linux的系统上,可以通过以下命令安装CVS: ```bash sudo yum install ...

    定制的bash环境,使git文件夹更加友好。-Linux开发

    Gittify定制的bash环境,使git文件夹更加友好。 该项目提供了bash / git定制文件。 运行gittify命令,启动新的bash shell并覆盖其控制台PS1。 新的控制台行信息Gittify定制的bash环境,使git文件夹更加友好。 该项目...

    cvs服务器端+配置说明书+客户端

    CVS(Concurrent Versions System)是一种广泛使用的开源版本控制系统,它允许开发者在不同的时间和地点对同一份代码进行修改,并能有效地合并这些修改,确保团队协作中的代码一致性。在本文中,我们将深入探讨CVS...

    cvs版本控制系统.的简单介绍

    此时,可以在`cvsdoc`目录中编辑文件,并使用`cvs add`和`cvs commit`命令将其添加到版本控制系统中。例如,将一个名为`cvs.txt`的文件添加到CVS: ```bash cvs add cvs.txt cvs commit -m "Initial revision." ```...

    cvs安装与配置管理

    CVS(Concurrent Versions System)是一种开源的版本控制系统,用于管理软件开发过程中的代码版本控制。它能够帮助开发者追踪代码的变更历史,支持多人协作开发,确保代码的一致性和完整性。本文将详细介绍如何在...

    CVS 使用说明,教你如何使用cvs下载

    CVS(Concurrent Versions System)是一种开源版本控制系统,用于管理软件项目在开发过程中的源代码版本控制。它能够跟踪每个文件的更改历史,允许团队成员并行工作,同时避免文件冲突。本文将详细介绍如何使用CVS...

    CVS客户端详细配置

    本篇文章将详细讲解如何在客户端配置CVS,以便能够有效地与CVS服务器进行交互。 首先,为了配置CVS客户端,你需要确保你的系统上已经安装了CVS软件。在大多数Linux发行版中,可以通过包管理器(如`apt`或`yum`)...

    BASH 中文文档

    - 对原文进行了适当调整以提高中文的可读性。 - 增加了脚注和备注以提供额外的信息。 - 改进了排版样式,使其更适合中文阅读。 - 优化了命令的交叉引用方式,便于快速查找。 - **辅助功能**:每个页面底部提供了...

    CVS完全手册--CVS一本通

    【CVS完全手册--CVS一本通】 CVS(Concurrent Versions System)是一个版本控制系统,其设计目的是在多用户环境中管理文件的版本和修改历史。...通过掌握这些知识,开发者可以有效地在团队中进行代码管理和协作。

    BASH中文手册加实例.pdf

    - **翻译贡献**:本书的中文翻译由杨春敏和黄毅完成,他们在六个月内完成了这部600多页的大部头翻译工作,体现了他们对Bash及开源文化的热情和支持。 - **版权说明**:本书遵循英文原版的版权条款,中文版的版权由...

Global site tag (gtag.js) - Google Analytics