+ -
当前位置:首页 → 问答吧 → 好吧,昨天是我没表述清楚,找出当前目录下非.svn目录下的所有文件

好吧,昨天是我没表述清楚,找出当前目录下非.svn目录下的所有文件

时间:2011-04-12

来源:互联网

http://bbs.chinaunix.net/thread-2299405-1-1.html  这个帖子中我没说清楚,各位大哥 , 我错了{:2_166:}


我想要的是:找出当前目录下 除了.svn目录下的所有文件

当前目录有许多子目录,子目录中也有.svn目录,就是遇到.svn就忽略它,包括忽略.svn的子目录

作者: qclzdh   发布时间: 2011-04-12

这个没搞过,友情帮顶下

作者: stabilization   发布时间: 2011-04-12

本帖最后由 yinyuemi 于 2011-04-12 09:30 编辑

回复 qclzdh

Try:
  1. find . -ls |awk '$3!~/^d/' | awk -F' .' '!/\.?svn/{print $NF}' |awk -F'/' {print $NF}'
复制代码

作者: yinyuemi   发布时间: 2011-04-12

  1. find /test -path  /test/.svn -prune -o -print  -type f
复制代码

作者: lovegqin   发布时间: 2011-04-12

find -name .svn -prune -o -type f

作者: waker   发布时间: 2011-04-12

-prune的应用,man find就可以看到了

作者: li2002   发布时间: 2011-04-12

本帖最后由 blackold 于 2011-04-12 09:22 编辑

回复 qclzdh
  1. find . -mindepth 1 -type d -name .svn -prune -o -print
复制代码
自己搜搜,本版很多这样的例子。

作者: blackold   发布时间: 2011-04-12

谢谢 各位  我都试了下, 说了结果, 有什么不对,还请见谅


3楼的方法 , 没输出。。。应该不对,

4楼,应该是给我提供了个思想  谢谢

5楼,稍微有点瑕疵  是这样的:
当前目录下有 config  cust ms .svn 4个目录,config cust ms没个子目录中都有.svn目录,用了5楼的 方法基本能达到要求,就是输出的是很会显示

./.svn
./configs/.svn
./configs/quartz_nand.tar.gz
./configs/quartz_nor.tar.gz
./cust/.svn
./ms/.svn
./ms/ads12.bat


要是能把这几个.svn也去掉  就完美了,   不过  还是谢谢各位

作者: qclzdh   发布时间: 2011-04-12

如果只列出文件,不列目录
  1. grep -Erl --exclude-dir=.svn '' .
复制代码

作者: blackold   发布时间: 2011-04-12

回复 qclzdh


    写错了,$2改为$3

作者: yinyuemi   发布时间: 2011-04-12

7楼 方法完美, 3楼不知道 怎么回事  似乎还是不行, sorry。。。img{:2_168:}img

9楼  似乎效果不好 , 我还在测试。。。{:2_173:}

作者: qclzdh   发布时间: 2011-04-12

咦  表情 怎么发  {img:2_170:img}

作者: qclzdh   发布时间: 2011-04-12

我发现 这样也是可行的  find ./ -name ".svn" -prune -o -print

作者: qclzdh   发布时间: 2011-04-12