#!/bin/ksh -p oldIFS=$IFS IFS='*' while read line ; do set $(echo $line | sed 's/\./\*/g') if (( $(expr "$1" : ".*") > 8 )) ; then num=0 newname=$(print $1 | awk '{print substr($1, 1, 6)}')~$num while [[ -e $newname ]] ; do num=$((num+1)) newname=$(print $1 | awk '{print substr($1, 1, 6)}')~$num done print -n $newname else print -n $1 fi print .$(print $2 | awk '{print substr($1, 1, 3)}') done IFS=$oldIFS