我的文件夹及其子文件夹中有.jpg文件.
image/1/large/imagexyz.jpg image/1/medium/imageabc.jpg image/1/small/imagedef.jpg
等2,3,4 ……
我需要用其文件夹名称重命名所有图像文件.
即. imagexyz.jpg应该是large_1.jpg,imageabc.jpg应该是medium_1.jpg等等.
解决方法
oldIFS="$IFS" IFS=/ while read -r -d $'\0' pathname; do # expect pathname to look like "image/1/large/file.name.jpg" set -- $pathname mv "$pathname" "$(dirname "$pathname")/${3}_${2}.jpg" done < <(find . -name \*.jpg -print0) IFS="$oldIFS"