Use find
para pesquisas recursivas:
find -name '*.doc' -exec catdoc {} + | grep "specificword"
Isso também mostrará o nome do arquivo:
find -name '*.doc' | while read -r file; do
catdoc "$file" | grep -H --label="$file" "specificword"
done
(Normalmente eu usaria find ... -print0 | while read -rd "" file
, mas talvez haja uma chance de 0,0001% de que seria necessário, então parei de me importar.)