【发布时间】:2012-08-28 15:43:10
【问题描述】:
我有一个这样的文件夹结构(这是一个小的 sn-p):
└── test
└── cases
└── model
├── client
│ ├── socketsTest.coffee
├── server
│ └── socketsTest.coffee
└── shared
└── findersTest.coffee
问题是,如何列出所有以.coffee 结尾且不存在于client 文件夹中的路径?
以下命令返回存在于server 文件夹中的与.coffee 匹配的所有文件:
find test -name "*Test.coffee" | egrep '/*server*/'
但我真正需要的是一个匹配所有除了客户端文件夹中的内容的正则表达式。
在 *nix 上最简洁的方法是什么?最终目标是返回不在client 文件夹内的文件,因此对于上面的树来说:
$ <find files except those a client folder>
test/cases/model/server/socketsTest.coffee
test/cases/model/shared/findersTest.coffee
我尝试做这样的事情但没有运气:
find test -name "*Test.coffee" | egrep '*model/[^client]*'
【问题讨论】:
标签: linux shell unix find grep