Eu tenho um monte de arquivos JPEG com exatamente o mesmo nome (ou seja, "orig.jpg") cada um em um subdiretório separado. Cada subdiretório tem um nome exclusivo (por exemplo, xplmz3nc5n, tyrn5m6ktv, etc ...).
Quero renomear os jpegs com base na data / hora de criação deles (por exemplo, 20120629_142536.jpg, etc.).
Consegui usar o photoshop para renomear cada arquivo com um identificador único. O principal recurso que permitiu isso foi a capacidade do Photoshop de "incluir todos os subdiretórios" em um processo em lote. Eu estava esperando poder então usar exiftool para renomear os arquivos para incluir a data de criação (para facilitar a catalogação). Infelizmente, o processo de renomeação de lote do photoshop reescreve a data de criação do arquivo para a data de hoje ...
Alguma sugestão sobre uma maneira de renomear em lote os arquivos em uma série de subdiretórios usando, digamos, comandos de terminal?
EDITAR
A resposta Aqui e obteve o seguinte resultado no Terminal
cd ~/foo
for dir in *; do
t=`stat -c %y "$dir" | awk '{print $1"-"$2}' |
cut -d ":" -f 1,2 | sed 's/://'`
mv "$dir" "$t"_"$dir";
done
e pegou
stat: opção ilegal - c uso: stat [-FlLnqrsx] [-f formato] [-t timefmt] [arquivo ...] stat: opção ilegal - c uso: stat [-FlLnqrsx] [-f formato] [-t timefmt] [arquivo ...] stat: opção ilegal - c uso: stat [-FlLnqrsx] [-f formato] [-t timefmt] [arquivo ...]
(por exemplo, tentei dois métodos diferentes ...).