On Wed, Jul 21, 2004 at 10:06:17PM +0000, Younes Zouhair wrote: > #!/bin/bash > # blank-rename.sh > # > # Substitutes underscores for blanks in all the filenames in a directory. > > ONE=1 # For getting singular/plural right (see below). > number=0 # Keeps track of how many files actually renamed. > FOUND=0 # Successful return value. > > for filename in * #Traverse all files in directory. > do > echo "$filename" | grep -q " " # Check whether filename > if [ $? -eq $FOUND ] #+ contains space(s). > then > fname=$filename # Strip off path. > n=`echo $fname | sed -e "s/ /_/g"` # Substitute underscore for blank. > mv "$fname" "$n" # Do the actual renaming. > let "number += 1" > fi > done > > if [ "$number" -eq "$ONE" ] # For correct grammar. > then > echo "$number file renamed." > else > echo "$number files renamed." > fi > > exit 0
F�licitation, c'est une fa�on tr�s longue de dire: rename "s/ /_/g" * �a ne r�soud pas le probl�me des sous-r�pertoires. Y.

