find -prune
$ find . -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' ./Projects/fooWin32/fooWin32/fooWin32.cpp ./Projects/fooWin32/fooWin32/fooWin32.h ./Projects/fooWin32/fooWin32/Resource.h ./Projects/fooWin32/fooWin32/stdafx.cpp ./Projects/fooWin32/fooWin32/stdafx.h ./Projects/fooWin32/fooWin32/targetver.h ./Projects/fooWin32_/fooWin32_/main.c ./Projects/tmp/tmp/main.cpp ./Projects/tmp0/tmp/Resource.h ./Projects/tmp0/tmp/stdafx.cpp ./Projects/tmp0/tmp/stdafx.h ./Projects/tmp0/tmp/targetver.h ./Projects/tmp0/tmp/tmp.cpp ./Projects/tmp0/tmp/tmp.h ./Projects/vector_capacity/vector_capacity/main.cpp $ find . -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' -o -ipath '*tmp*' -prune -type f ./Projects/fooWin32/fooWin32/fooWin32.cpp ./Projects/fooWin32/fooWin32/fooWin32.h ./Projects/fooWin32/fooWin32/Resource.h ./Projects/fooWin32/fooWin32/stdafx.cpp ./Projects/fooWin32/fooWin32/stdafx.h ./Projects/fooWin32/fooWin32/targetver.h ./Projects/fooWin32_/fooWin32_/main.c ./Projects/vector_capacity/vector_capacity/main.cpp
ただし
$ find . -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' -o -ipath '*tmp*' -prune -type f -print
何も表示されない
$ find . \( -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' -o -ipath '*tmp*' -p rune -type f \) -print ./Projects/fooWin32/fooWin32/fooWin32.cpp ./Projects/fooWin32/fooWin32/fooWin32.h ./Projects/fooWin32/fooWin32/Resource.h ./Projects/fooWin32/fooWin32/stdafx.cpp ./Projects/fooWin32/fooWin32/stdafx.h ./Projects/fooWin32/fooWin32/targetver.h ./Projects/fooWin32_/fooWin32_/main.c ./Projects/vector_capacity/vector_capacity/main.cpp