All pastes #34734 Raw Edit

Unnamed

public text v1 · immutable
#34734 ·published 2005-12-23 19:35 UTC
rendered paste body
   #!/bin/sh
   #
   # usage: rename.sh DIR ...

   filecount=0

   for dname in * ; do
       find "${dname}" -type f |\
       while read fname; do
           newname=$( echo "${fname}" | sed -e 's/[[:space:]]/_/g' )
           if [ "${fname}" = "${newname}" ]; then
               continue
           fi
           mv "${fname}" "${newname}" >/dev/null 2>&1
           if [ $? -ne 0 ]; then
               echo >&2 "$0: ${fname}: cannot rename file."
	    else
               filecount=$(( $filecount + 1 ))
           fi
       done
   done

   if [ $filecount -eq 1 ]; then
       echo "1 file renamed."
   elif [ $filecount -gt 1 ]; then
       echo "$filecount files renamed.
   fi