Bash script for files with spaces in the filenames

John Summerfied debian at
Thu Feb 16 11:54:53 UTC 2006

Tim Fenn wrote:
> On Thu, Feb 16, 2006 at 11:29:04AM +0200, Dotan Cohen wrote:
>>Another friend has provided me with a simple bash script that performs
>>an operation on all the files of a directory. However, many of the
>>file names contain spaces. How can I modify the following code to work
>>on files with spaces? The directory is on a mounted FAT32 partition.
> xargs, yo!
> find $(pwd) -name "*.mp3" -print0 | xargs -0 eyeD3 --force-update --set-encoding=utf8

man xargs for the scoop, sometimes you want to run your eyeD3 with just 
one filename.

This works too:
find . -type f -name "*.mp3" \
    -exec eyeD3 --force-update --set-encoding=utf8 {} \;

man find for more.

Note that the original script will also fail if the length of the 
commandline generated is too great. Just for laughs:
echo $(find / -type f) 2>/dev/null



-- spambait
1aaaaaaa at  Z1aaaaaaa at
Tourist pics

do not reply off-list

More information about the users mailing list