shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script-pt] Normalizar nomes de arquivos


From: Julio C. Neves
Subject: Re: [shell-script-pt] Normalizar nomes de arquivos
Date: Fri, 13 Dec 2019 15:55:34 -0300

Minha solução seria algo como:

for Arq in [0-9]*_*.pdf
do
    [[ -f ${Arq#[0-9]*_} ]] && {
        echo Impossível renomear $Arq. Ele já existe
        continue; }
    mv $Arq ${Arq#[0-9]*_}
done

Como é tudo builtin, deve ser bem eficiente.
Abraços,
Julio

» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?
» Em outubro abriremos uma semana de inscrições
» para uma nova turma. Veja mais detalhes em:

Também damos treinamento em sua empresa
em qualquer cidadecom certificado e nota fiscal.







Em sex., 13 de dez. de 2019 às 13:55, Jamenson Ferreira Espindula de Almeida Melo <address@hidden> escreveu:
Em sex., 13 de dez. de 2019 às 13:37, Guilherme Gall
<address@hidden> escreveu:
>
> Se entendi corretamente, você tem strings no padrão
>
> dígitos + sublinhado + nome.pdf
>
> e quer que fique
>
> nome.pdf
>
> Segue minha sugestão:
>
> $ cat exemplo.txt
> 123_nome.pdf
> 456789_nome2.pdf
>
> $ sed 's/^[0-9]*_\(.*\)/\1/' exemplo.txt
> nome.pdf
> nome2.pdf
>
> Se não quiser escapar o grupo dentro da regex, use a opção -r do sed
> (acho que fica um pouco mais legível):
>
> $ sed -r 's/^[0-9]*_(.*)/\1/' exemplo.txt
> nome.pdf
> nome2.pdf
>
> Espero ter ajudado um pouco,
>
> Atenciosamente
>
> Guilherme Magalhães Gall
>

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

Esclareceu mais?

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

_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: address@hidden
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]