java -jar ~/Downloads/simian-2.3.35/bin/simian-2.3.35.jar files $(find ~/App/Classes/ -type f -name "*.m" -not -path "Lib/excludethisdir/*")
我正在尝试运行simian并将文件参数传递给它,但是不包括目录就不起作用了。 Lib目录包含在类
中任何人都可以指出它为什么不起作用(命令运行,但不排除)
答案 0 :(得分:9)
你嵌套的find命令应该是:
find ~/App/Classes/ -type f -name "*.m" -not -path "./Lib/excludethisdir/*"
即。在排除的路径之前添加./
。
甚至更好:
find ~/App/Classes/ -path "./Lib/excludethisdir/*" -prune -o -type f -name "*.m" -print
答案 1 :(得分:0)
不是,请回答! 我有以下类似的结构。
$ tree ./tmp
./tmp
├── file.ext
├── file.other_ext
└── inner_tmp
├── inner_file.ext
└── inner_file.other_ext
1 directory, 4 files
$
当我尝试
$ find ./tmp -type f -name '*.ext' -not -path './inner_tmp/'
OR
$ find ./tmp -path './inner_tmp/*' -prune -o -type f -name '*.ext' -print
我得到以下信息:
./tmp/inner_tmp/inner_file.ext
./tmp/file.ext
问题是:为什么inner_tmp
目录包含在结果中?我在这里想念什么?