Isso excluirá o primeiro -2
encontrado em cada nome de arquivo:
for f in pic*-2.png; do
mv "$f" "${f/-2/}"
done
Para testar, prefixar echo
na linha mv
.
Eu tenho uma pasta com imagens nomeadas:
pic001-2.png
pic002-2.png
pic003-2.png
Como posso renomeá-los para o seguinte?
pic001.png
pic002.png
pic003.png
Eu tentei mv "pic*-2.png" "pic*.png"
, mas continue recebendo erros.
Você precisa do comando 'rename' apropriadamente chamado!
Tente algo assim:
rename 's/(pic\d+)-\d\.jpg/$1.jpg/' pic*.jpg
Ele usa uma expressão regular perl como o primeiro argumento, portanto, suas opções de correspondência e manipulação de padrões são bastante extensas. Veja a página do manual rename (1) para detalhes completos.