Unix/Linux allows any character in a path name except / or NUL. However, embedded spaces, newlines and the like can cause problems for carelessly-written Shell scripts (or scripts for carelessly-written shells), and cause some command PipeLines to fail completely.
To get around this, the GNU versions of find(1) and xargs(1) incorporate special extensions that work together. The --print0 option to find causes it to output matching pathnames terminated by NUL characters rather than newlines, thereby avoiding confusion with any embedded newlines that might occur in the pathnames. Correspondingly, the xargs command takes the option --null (shorter synonym -0) to indicate that its input is delimited in this way; though on my SUSE system I also have to specify --max-lines=1 (shorter synonym -L1).
Events/Weddings/Freda's Wedding/data.txt Events/Car Race/data.txt Events/New Year Fireworks/data.txt
find Events -name data.txt -print0 | xargs -0 -L1 wc -l
2 pages link to SpacesInPathNames: