#!/bin/bash
appledir="$HOME/Pictures/DCIM/101APPLE"
jpgname="5003.JPG"
for dir in "$appledir"/*
do if [[ -d "$dir" ]]
then
newfile="$appledir/${dir##*/}"
mv "$dir"/5003.JPG "$newfile.tmp" &&
rmdir "$dir" &&
mv "$newfile.tmp" "$newfile"
fi
done
Com uma árvore inicial como esta:
$ tree Pictures/
Pictures/
└── DCIM
└── 101APPLE
├── IMG_1002.JPG
│ └── 5003.JPG
├── IMG_1003.JPG
│ └── 5003.JPG
└── IMG_1004.JPG
└── 5003.JPG
Após a execução do script ( ./script.sh
), esta será a árvore:
$ tree Pictures/
Pictures/
└── DCIM
└── 101APPLE
├── IMG_1002.JPG
├── IMG_1003.JPG
└── IMG_1004.JPG
Editar:
Para renomear os arquivos *.PNG
de volta para *.JPG
, use:
for name in "$HOME/Pictures/DCIM/101APPLE"/*.PNG
do mv -i "$name" "${name%PNG}JPG"
done