. $TARGETPATH, ls -l, , , , $CURDIR. : (find -f , ..).
wc -l , [ 1], [1], sed.
, , , : 2-3-dir, , newdirname CURDIR; , , mv.
#!/bin/bash
TARGETPATH=.
for CURDIR in `ls -l $TARGETPATH`
do
if [ -d $TARGETPATH/$CURDIR ]; then
echo "$CURDIR is a directory"
FILECOUNT=$(ls -l $CURDIR | grep ^- | wc -l | sed -e 's/[ \t]*//')
echo " and there are $FILECOUNT file(s)";
newdirname="$FILECOUNT"-"$(echo "$CURDIR" | sed -e 's/^[0-9]*-//')"
echo " New directory name: ["$newdirname"]"
if [[ "$CURDIR" != "$newdirname" ]]; then
mv $TARGETPATH/$CURDIR $TARGETPATH/$newdirname
fi
fi
done