I have a directory with about 50 wav files that I need to convert to caf, because AudioServicesCreateSystemSoundID() returns an error for some of them (but not all).
Her
If you are dealing with filenames that contain spaces on Linux, try the following code:
SAVEIFS=$IFS IFS=$(echo -en "\n\b"); for i in *.wav; do afconvert -f caff -d LEI16@44100 -c 1 $i ${i%.wav}.caf; done