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

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

Re: [shell-script] Alterar o case de um filename


From: Kurt Kraut
Subject: Re: [shell-script] Alterar o case de um filename
Date: Thu, 15 Oct 2009 12:35:41 -0300

Aloha Osvaldo,

O dash é um binário menor que o bash, usa menos RAM e é bem mais rápido.
Como exemplo, um script meu de 28 linhas quando rodado em bash conclui suas
operações em 73 segundos. Já em dash, conclui em 44 segundos.

Como o bash apresenta dialetos, sintaxes de scripts que só ele entende, nem
todo script feito em bash roda em dash. Mas todo script feito em dash roda
em bash.

Existe uma ferramenta para checar por 'bashisms', estruturas do dialeto do
bash: http://man.he.net/man1/checkbashisms

A diferença de performance é tão notável que o Ubuntu adaptou todos os shell
scripts do processo de boot de bash para dash, para reduzir a duração do
tempo de boot.


Atenciosamente,


Kurt Kraut (address@hidden)

2009/10/15 Osvaldo Filho <address@hidden>

>
>
> Como falei era apenas uma ideia inicial.
> As ideias subsequentes sao mais completas.
> Gostaria de saber do Kurt Kraut a diferença entre o dash e o bash?
> Nunca tinha ouvido falar sobre dash.
>
> Para você mudar o nome do arquivo, independente de ser maisculo ou
> minusculo, vc terá que realizar um teste:
> if ($arq_old uppercase)
> then
> mv $arq_old $arq_new | tr [:uppercase:] [:lowercase:]
> else
> mv $arq_old $arq_new | tr [:lowercase:] [:uppercase:]
> elif
>
> 2009/10/15 Kurt Kraut <address@hidden <listas%40kurtkraut.net>>
>
>
> >
> >
> > Aloha,
> >
> > Veja se minha abordagem te agrada:
> >
> > #!/bin/dash
> > temporario=$(mktemp)
> > ls --ignore-backups --width=1 > $temporario
> > while read nome_antigo
> > do
> > nome_novo=$(echo $nome_antigo | tr [:upper:] [:lower:])
> > mv --interactive --verbose $nome_antigo $nome_novo
> > done < $temporario
> > echo "Operação concluída."
> > rm $temporario
> >
> > Atente que uso dash em vez de bash. Caso não tenha dash instalado, troque
> a
> > primeira linha para o caminho do bash. Os arquivos que terão as letras
> > maiúsculas trocadas para minúsculas serão aqueles que estão no mesmo
> local
> > de execução do script.
> >
> > Atenciosamente,
> >
> > Kurt Kraut (address@hidden <listas%40kurtkraut.net> <listas%
> 40kurtkraut.net>)
> >
> >
> > 2009/10/15 George Robinson <address@hidden<george.robinson.br%40gmail.com>
> <george.robinson.br%40gmail.com>
> > >
> >
> > >
> > >
> > > É possivel alterar o case de um arquivo ou de varios arquivos??
> > >
> > > ex: ARQUIVO 1 -> arquivo 1 / Arquivo 2 --> arquivo 2
> > >
> > > Obrigado
> > >
> > > Att,
> > >
> > > --
> > > George Robinson
> > > Analista de Suporte
> > > Tel: (21) 8843-7251 / (21) 8140-2351
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> --
> Att,
>
> Osvaldo Filho.
>
> Técnico em Conectividade com Extensão em Desenvolvimento de Software - Ifet
> Ceará.
> Graduando em Telemática - Ifet Ceará.
> Analista de Suporte nível 1 - Auriga.
> Professor do SintufCE - Administração de Redes.
>
> Visite: http://osvaldofilho.wordpress.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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