[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script-pt] Normalizar nomes de arquivos
From: |
Guilherme Gall |
Subject: |
Re: [shell-script-pt] Normalizar nomes de arquivos |
Date: |
Fri, 13 Dec 2019 14:25:59 -0300 |
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.