Este é o meu problema: tenho uma pasta com 500 imagens denominada:
1.jpg
2.jpg
3.jpg
e assim por diante..
Copiei essa pasta e agora preciso renomear as mesmas imagens de 501 a 1000, mas da seguinte forma:
1.jpg becomes 501.jpg
2.jpg becomes 502.jpg
3.jpg becomes 503.jpg
....
Quando uso meu comando de renomeação padrão:
i=501;for img in $(find . -iname '*.jpg'); do echo -n "Converting $img"; mv $img $i.jpg && echo $i && ((i++)); done
Ele ordena imagens de 501 a 1000, mas estão todas espalhadas:
23.jpg becomes 501.jpg,
66.jpg becomes 502.jpg
...
(eles estão na ordem certa, mas os mistura)
Eu sei que provavelmente está faltando um comando ...
command-line
rename
batch-rename
Analgésico
fonte
fonte
Respostas:
Experimente o Thunar , que é o gerenciador de arquivos padrão do Xfce. É muito leve e vem com uma útil ferramenta de renomeação em massa. Você pode instalar o Thunar executando o seguinte comando no Terminal:
Você provavelmente também poderá instalar a partir do Ubuntu Software.
Como usar o utilitário
Além de numerar, este utilitário suporta as seguintes ações:
fonte
pyrenamer
funciona perfeitamente e é o que eu uso para renomear beliches quando quero que uma GUI compare antes / depois da saída.O
find
comando encontra arquivos em ordem 'diretório' (23.jpg
,66.jpg
...). você pode colocar um|sort
após a descoberta.Mas seus métodos são muito complexos.
fonte
for i in {1..500}; do ...
teria abelha mais fácil.Com
rename
comando.Ou em pura
bash
e usando expansão de parâmetros de shell .fonte
Se entendi o que você está perguntando corretamente, acho que você pode fazer isso usando a ferramenta de renomeação padrão:
Você deve remover a opção
-vn
(detalhada - sem ação) após o teste, para efetivar a alteração.fonte
rename
está ligada aprename(1)
partir doperl
pacote que não suporta todas essas opções de linha de comando.'s/^(\d+)/sprintf("%d",$1+500)/e'
. Vou atualizar minha resposta de acordo. Obrigado.Outra maneira de conseguir isso com apenas o comando shell
contagem = 1, para i in
ls
; faça mv $ i CN $ ((contagem ++)). $ {i ## *.}; feitofonte