Reorganize os componentes dos nomes de arquivos para um grupo de arquivos

1

Eu tenho um grupo de arquivos de foto que são nomeados: ddmmyyyyxxxx.jpg (xxxx é apenas um número de seqüência) que estou tentando pesquisar, mas infelizmente nenhum resultado é renomear o nome do arquivo para yyyy-mm-dd-xxxx.jpg .

Tudo o que posso encontrar na rede é substituir um determinado caractere ou alterar o caso das letras.

    
por Dark Edge 2008 21.05.2016 / 13:48

3 respostas

2

Você deve conseguir fazer isso usando grupos de captura com o comando rename baseado em perl, por exemplo, na sua forma mais simples

rename -vn -- 's/^(\d{2})(\d{2})(\d{4})/--/' *.jpg

(Nota: o -n é um sinalizador de execução seca: ele não mudará nada, a menos que você o remova).

    
por steeldriver 21.05.2016 / 14:03
2

Você pode fazer isso usando o seguinte script bash.

#!/bin/bash

for file in $(ls)
do
    date=${file:0:2}
    month=${file:2:2}
    year=${file:4:4}
    sequence=${file:8:4}
    extension=${file: -3}

    mv $file $year\-$month\-$date\-$sequence.$extension
done
echo all files have been renamed

Para usar este script, abra um terminal e digite touch script seguido por chmod +x script para torná-lo executável. Em seguida, execute nano script e copie e cole o código acima no terminal. salve o arquivo pressionando CTRL + X , seguido por Y e então entre . Em seguida, mova o script para o diretório que contém essas imagens e execute o script executando ./script .

Isso renomeará todos os arquivos no diretório do script para o padrão solicitado. No entanto, ele também renomeia o script, portanto, se você quiser executar o script novamente, observe que ele terá um nome diferente (ele será pt-ri-sc-.ipt , eu recomendo que você execute mv pt-ri-sc-.ipt script antes de usar o script novamente. sábio você poderia substituir ls com ls e armazenar o script em outro lugar para evitar o seu nome por acidente. Além disso, esse script só será executado corretamente para arquivos que tenham nomes na sequência fornecida na pergunta ( ddmmyyyyxxxx.jpg ). Para quaisquer outros arquivos, o arquivo terminará com algum nome estranho.

    
por Rumesh 21.05.2016 / 14:20
0

Para este tipo de procedimento eu uso o Krename, ele tem uma GUI e é um pouco intuitivo… No Ubuntu você o encontra no Centro de Software.

    
por user219502 21.05.2016 / 17:52