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

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

Re: [shell-script] Renomear arquivos com espacos em branco


From: Mauricio
Subject: Re: [shell-script] Renomear arquivos com espacos em branco
Date: Tue, 01 Nov 2005 14:31:57 +0000
User-agent: Mozilla Thunderbird 1.0.7 (X11/20050923)

O meu eu fiz assim: :-)



#!/bin/bash
#tira os espaços de nomes windows
IFS=','
for i in *
do
novonome=`echo $i | tr -d ' '`
mv "$i" "$novonome" 2> /dev/null
done



Acho que dá pra melhorar o desempenho... veja o que vcs podem fazer... penso que usar o sed pode ser um pouquinho mais lento...
abraćo
Ricio

Franklin Anderson de Oliveira Souza wrote:
Usei o mesmo raciocinio seu pra fazer o que voce quer, segue abaixo:

=========================
#!/bin/bash

IFS='
'
for i in `ls`
do
        var=`echo $i | sed -s  's/ //g'`

        if [ $i != $var ]
        then
                mv $i $var
        fi
done

echo "Protinho ..."
============================

testa ae roberto ...



Em 28/10/05, Roberto Alves<address@hidden> escreveu:

Vlw, Alexandre.
Já havia seguido a sugestão do Tiago que também foi muito boa:

/"Tiago Barcellos Peczenyj wrote:
Se tu estiver no BASH, pode usar expansão de variaveis
for i in *; do mv "$i" "${i//\ /_}" ; done
aqui funcionou... =) "
/
Acho que sua sugestão é muito boa caso eu não esteja no BASH.

Abraços e bom fimdi pra todos.

Roberto



Alexandre Vieira Santos wrote:


eu tenho um diretório com milhares de mp3, e pra deixar os arquivos num
padrão razoável ( no lugar de, por exemplo espaço  -- " " o _ ) eu uso :


W=" " ;  while \ls | grep -c "$W" ; do \ls | xargs rename "$W" _ ; done

o "W" é pra facilitar a situação de se querer substituir outro caractere
por "_" .

SDS

Alexandre Vieira Santos

Roberto Alves wrote:




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
    <mailto:address@hidden?subject=Unsubscribe>

  * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
    Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.






---------------------------------------------------------------------
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
---------------------------------------------------------------------

Links do Yahoo! Grupos













---------------------------------------------------------------------
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
---------------------------------------------------------------------

Links do Yahoo! Grupos











---------------------------------------------------------------------
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
---------------------------------------------------------------------
Links do Yahoo! Grupos








reply via email to

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