why is this script failing?

David Kelly dkelly at hiwaay.net
Mon Jul 14 21:09:27 UTC 2008


On Mon, Jul 14, 2008 at 01:12:47PM -0700, Gary Kline wrote:
> 
> 	why is this script not finding them?
> 
> 
> wav=/tmp/kde-kline/\*wav\*
> 
> if [ -s $wav ]

As others have pointed out because if "/tmp/kde-kline/file1.wav
/tmp/kde-kline/file2.wav" is found the -s will fail because $wav isn't a
single file. Or it could be that your escaped wildcards are staying
escaped.

I use something like this to move files out of a Maildir:

#!/bin/sh
for i in /tmp/kde-kline/*wav
do
	# if nothing or nonsense was found then $i won't exist
	if [ -e $i ]
	then
		echo "Found " $i
		/bin/rm $i
	fi
done

But why do it the hard way?

#!/bin/sh
/bin/rm /tmp/kde-kline/*wav > /dev/null 2>&1


-- 
David Kelly N4HHE, dkelly at HiWAAY.net
========================================================================
Whom computers would destroy, they must first drive mad.


More information about the freebsd-questions mailing list