Tru64 "find" command hates me.

I want to search for all the .c .h and .pc files with find and it doesn't seem to agree with me. I tried:

find . -name ".[ch]|pc"
find . -name "
.([ch]|pc")"
find . -name ".[ch]" -name ".pc"

nothing works. If I just want all .c and .h files the character group works great. I.E. find . -name "*.[ch]" will find all the .c and .h files perfectly.

Is the or operator functional in find or am I doing it wrong? If the former, is there another way to do it without performing two separate find statements?

Thanks!

Perhaps try...

find . \( -name '*.c' -o -name '*.h' -o -name '*.pc' \) -type f -print

thanks...I didn't see anything in the man page for -o, but that works.

Appreciate it!