dovresti usare trova :
find . -size 0 -delete
Questo eliminerà tutti i file in una directory (e sotto) che sono di dimensione zero.
find /tmp -size 0 -print -delete
Se vuoi solo un file particolare;
if [ ! -s /tmp/foo ] ; then
rm /tmp/foo
fi