find | xargs, like this:
find . -name "*.txt" | xargs vim
you get a warning about
Input is not from a terminal
and a terminal with pretty much broken behaviour afterwards. Why is that?
This question was explicitly about the why, not about the how to avoid. This was asked, and answered, elsewhere.