On Tue, Mar 24, 2009 at 12:59:12PM -0700, renator wrote:
>
> esses tipos de caracteres: ñß¢Ð£Øø§µÝý¥¹²³ por exemplo.
>
> Consegui adaptar um script, para alterar nomes com esses tipos de
> caracteres para hifen, mas nao consegui configurar o script para
> trabalhar recursivamente. Atualmente, o script esta desta forma:
>
> for f in *; do
> new=`echo $f | tr "àá|âãäåèéêëìíîïòóôõöùúûüçñß¢Ð£Øø§µÝý¥¹²³~?
> áÁéÉíÍóÓúÚâÂêÊôÔãÃõÕàÀòÒâð£þ®§ü" "-"`
> if [ "$f" != "$new" ]; then
> mv "$f" "$new"
> fi
> done
>
>
> Se alguem puder me ajudar a fazer o script trabalhar recursivamente ou
> tiver outra sugestão, eu agradeço.
>
> []'s,
> Renato
assumi que os caracteres em questão são os não ascii 7 (man ascii)
e que você precisa trocá-los por hífen, dessa forma você pode fazer
algo parecido com este 1liner:
find ./ -type f -regex '.*[^ -~].*' -exec sh -c 'new=`echo "{}" | tr -c "[
-~\n]" -`; echo mv -i "{}" $new' \;
mas atente para o fato de que ao renomear os caracteres para "-" você
pode acabar sobrescrevendo arquivos que passariam a ficar com nomes
iguais.
--
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------
--~--~---------~--~----~------------~-------~--~----~
GUS-BR - Grupo de Usuários de Slackware Brasil
http://www.slackwarebrasil.org/
http://groups.google.com/group/slack-users-br
Conheça o Novo Forum do GUS-BR na Under-Linux.Org em:
http://under-linux.org/forums/slackware/
-~----------~----~----~----~------~----~------~--~---