28 de novembro de 2012

Linux - Renomear múltiplos arquivos por ordem natural via shell

j=0; for i in `ls -1v *.jpg`; do mv "$i" novo_nome_$j.jpg; ((j++)); done

Caso os nomes dos arquivos estejam com espaços, utilize assim:
IFS=$'\n'; j=0; for i in `ls -1v *.jpg`; do mv "$i" novo_nome_$j.jpg; ((j++)); done
Fontes:
http://www.tech-recipes.com/rx/166/loop-over-a-set-of-files-from-the-shell/
http://stackoverflow.com/questions/1574898/bash-and-filenames-with-spaces

Nenhum comentário:

Postar um comentário