$ cat *.txt | tr " " "\n" | sort | uniq
Use tr to put all the words (separated by spaces, but you can make this more complex if you need) into their own line. sort will then sort all these words. Finally, uniq will get rid of duplicate lines, and the -c flag will add counts. I'll run this on a small set of bug reports from the Eclipse Bugzilla repository:
$ cat * | tr " " "\n" | sort | uniq -c 1 ^^^^ 6 able 12 about 1 aboutdialog 1 abovebackground 1 absolute 18 abstract 2 abstractannotationprocessormanager 4 abstractcompletiontest 1 abstractdebugeventhandler [...]
The words will be displayed in alphabetical order. (Yes, the word "^^^^" actually appeared somewhere in the bug reports.) To instead display them by usage in decreasing order, run it all through sort one more time:
$ cat * | tr " " "\n" | sort | uniq -c | sort -gr 1118 java 1006 eclipse 1005 at 956 org 825 the 546 internal 361 to 356 jdt 320 ui 318 in [...]
The -g option sorts by numeric values, instead of alphanumeric, and the -r option reverses the sort. Voilà!