Shell

Shell

Made by DeepSource

Non-alphanumeric names may have been skipped SH-2038

Anti-pattern
Major

By default, xargs interprets spaces and quotes in an unsafe and unexpected way. Whenever it's used, it should be used with -0 or --null to split on \0 bytes, and find should be made to output \0 separated filenames.

POSIX does not require find or xargs to support null terminators, so you can also use find -exec <command> +.

Problematic code:

find . -type f | xargs md5sum

Preferred code:

find . -type f -print0 | xargs -0 md5sum
find . -type f -exec md5sum {} +