Follow-up Comment #1, bug #44570 (project findutils): Try again, using: LC_ALL=C find -type f -not -name '*.txt'
My guess is that you are in a non-C multibyte locale, and that the filenames being printed are ones that are invalid when interpreted in the multibyte encoding rules of your current locale. globbing is only required to work on valid encoded content, so the fact that you have a name that is not a valid encoding means that the glob cannot match it, and therefore it gets printed even though it ends in a .txt ending. Switching to a locale where there are no encoding errors (such as LC_ALL=C) will avoid the problem. Oh, and don't use: -name *.txt. You WANT to use -name '*.txt' (so that the shell is not expanding the glob prior to calling find, but rather that find is being given a literal glob to expand itself). _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?44570> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/