#! /bin/sh
# name: rename_photos.sh
# author: Weihong Guan (aGuegu) http://aguegu.net
# date: 2012-11-25
# usage: $./rename_photos path extension_name
# example: $ ./rename_photos.sh ~/Pictures/2012-11-25/ jpg
path=${1:-$(pwd)}
# $path
if echo $path | grep ".*/$" > /dev/null
then
length=$(expr length $path)
length=$(($length-1))
path=$(expr substr $path 1 $length)
fi
#echo $path
foldername=${path##/*/}
#echo $foldername
ext=${2:-"jpg"}
#echo $ext
pics=$(ls $path/*.$ext|sed 's/ /^Z/g') # ^z is CTRL+Z in vi
i=1
for p in $pics
do
# echo $p
old_name=$(echo $p | sed 's/^z/\ /g')
new_name=$(printf "%s/%s_%03d.%s\n" $path $foldername $i $ext)
echo mv "$old_name" "$new_name"
mv "$old_name" "$new_name"
echo $((i += 1)) > /dev/null
done
exit 0
利用Shell语言批量有序命名某一文件夹下的所有文件
最新推荐文章于 2021-06-29 16:01:19 发布