[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script-pt] Normalizar nomes de arquivos
From: |
Jamenson Ferreira Espindula de Almeida Melo |
Subject: |
Re: [shell-script-pt] Normalizar nomes de arquivos |
Date: |
Fri, 13 Dec 2019 14:44:04 -0300 |
Em sex., 13 de dez. de 2019 às 14:26, Guilherme Gall
<address@hidden> escreveu:
>
> Em sex., 13 de dez. de 2019 às 13:55, Jamenson Ferreira Espindula de
> Almeida Melo <address@hidden> escreveu:
> > Olá, Guilherme.
> >
> > Obrigado pela ajuda.
> >
> > Isso mesmo. Você entendeu corretamente. Segue um exemplo de nome de arquivo:
> >
> > 200593_xxix_eou_1ª_fase-analise_atendimento_especial_deferidos_parcial.pdf
> >
> > Salvo engano, o aplicativo "sed" age no conteúdo dos arquivos. Correto?
> >
> > O que preciso é renomear os arquivos para eliminar aquele conjunto de
> > números e, também, o primeiro caractere sublinhado. No exemplo dado,
> > ficaria assim:
> >
> > xxix_eou_1ª_fase-analise_atendimento_especial_deferidos_parcial.pdf
>
> Sim, o sed modifica texto, não é especificamente para mudar nomes de
> arquivos. Você teria que escrever um script pra fazer isso, se quiser
> usar o sed. Minha intenção era mais mostrar a regex.
>
> Usando o rename tem como você usar a mesma regex, escrita um pouco
> diferente da do sed.
>
> Exemplo:
>
> $ mkdir /tmp/exemplo && cd /tmp/exemplo
>
> $ touch
> 200593_xxix_eou_1ª_fase-analise_atendimento_especial_deferidos_parcial.pdf
>
> $ ls
> 200593_xxix_eou_1ª_fase-analise_atendimento_especial_deferidos_parcial.pdf
>
> $ rename 's/^[0-9]*_(.*)/$1/' *
>
> $ ls
> xxix_eou_1ª_fase-analise_atendimento_especial_deferidos_parcial.pdf
>
> Só mudou que o caractere delimitador de grupo não precisou ser
> escapado e o retrovisor ficou $1 ao invés de \1.
>
Uau! Funcionou perfeito! :)
Obrigado Guilherme! Alguns arquivos não foram renomeados, porém não
por defeito da Expressão Regular e sim porque já existiam arquivos com
o mesmo nome.
Valeu mesmo.
Um abraço.
Jamenson Ferreira Espindula de Almeida Melo
Jaboatão dos Guararapes, Pernambuco, Brasil
Usuário GNU/Linux nº 166197
https://linuxcounter.net/cert/166197.png
Impressão digital da chave PGP:
234D 1914 4224 7C53 BD13 6855 2AE0 25C0 08A8 6180