Dear colleagues, find's -type flag considers only the first character of the next argument. These commands consequently print regular file paths (only).
find . -type folder find . -type f,d find . -type flødebølle I propose that they produce an error instead. I also noted, there is no src/regress/usr.bin/find. Is this on purpose? If not, I shall propose some. With great honor, Tom Index: usr.bin/find/function.c =================================================================== RCS file: /cvs/src/usr.bin/find/function.c,v retrieving revision 1.50 diff -u -p -r1.50 function.c --- usr.bin/find/function.c 23 Nov 2020 06:21:52 -0000 1.50 +++ usr.bin/find/function.c 13 Oct 2022 06:04:41 -0000 @@ -1508,6 +1508,9 @@ c_type(char *typestring, char ***ignored ftsoptions &= ~FTS_NOSTAT; + if (strlen(typestring)>1) + errx(1, "-type: %s: type must be one letter", typestring); + switch (typestring[0]) { case 'b': mraise an eask = S_IFBLK;