[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Renomear arquivos com espacos em branco
From: |
Tiago Barcellos Peczenyj |
Subject: |
Re: [shell-script] Renomear arquivos com espacos em branco |
Date: |
Wed, 19 Oct 2005 14:36:36 -0200 |
Se tu estiver no BASH, pode usar expansão de variaveis
for i in *; do mv "$i" "${i//\ /_}" ; done
aqui funcionou... =)
normalmente precisamos escapar o caracter "espaço" com uma barra
Em 19/10/05, Roberto Alves<address@hidden> escreveu:
> Pessoal,
> tenho um diretório com vários arquivos com nomes separados por espaços
> em branco.
> Tentei renomeá-los de uma vez so fazendo o seguinte:
>
> roberto> ls -la
> total 4.1M
> drwxr-xr-x 2 roberto roberto 4.0K 2005-10-19 10:10 ./
> drwxr-xr-x 65 roberto roberto 8.0K 2005-10-19 08:41 ../
> -rwxr--r-- 1 roberto roberto 4.1M 2005-10-18 16:35 BTO\ -\ Down\
> Down.mp3*
> ...e varios outros...
>
>
> roberto> for i in `ls -1`; do NEW=`echo "$i" |sed -e 's/ //g'`; mv '$i'
> $NEW; done
> mv: cannot stat `\'BTO\\\'': No such file or directory
> mv: cannot stat `\'-\\\'': No such file or directory
> mv: cannot stat `\'Down\\\'': No such file or directory
> mv: cannot stat `\'Down.mp3*\'': No such file or directory
>
> obs: fiz um ls -1 (um) e nao L (minusculo) o L me traria varias outras
> coisas e o 1 (um) somente o nome do arquivo.
>
> também tentei tirar o sed e fazer um move direto assim:
>
> roberto> for i in `ls -1`; do mv `echo \'$i\'` `echo \'$i\' |tr -d '
> '`; done
> mv: cannot stat `\'BTO\\\'': No such file or directory
> mv: cannot stat `\'-\\\'': No such file or directory
> mv: cannot stat `\'Down\\\'': No such file or directory
> mv: cannot stat `\'Down.mp3*\'': No such file or directory
>
> mas a resposta foi a mesma.
>
> Alguém tem uma sugestao do que fazer para trocar os espaços em branco,
> em todos os arquivos, de uma so vez?
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>
>
>
>
> Yahoo! Grupos, um serviço oferecido por:
>
> ________________________________
> Links do Yahoo! Grupos
>
>
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/shell-script/
>
> Para sair deste grupo, envie um e-mail para:
> address@hidden
>
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.