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

Re: Comando para substituir nome arquivo sem perder a numeração"



Obrigado Listeiro, consegui fazer funcionar, era mesmo as falta de aspas
e barras.

Ajustei conforme me passou e deu certo. Mas o comando 'rename' que o
Antonio me passou achei mais pratico.

Muito obrigado, por me ajudar amigo. T+

Em Qui, 2015-05-28 às 04:21 -0300, Listeiro 037 escreveu:
> Faltaram aspas. Faltaram umas barras tipo \ antes dos colchetes no
> comando sed. Tipo \[ e \]. Compare.
> 
> Eu criei arquivos fictícios com touch e testei. Funcionou.
> 
> O que funcionou aqui 'ipsis litteris' é
> 
> cd DIRETORIO
> for NOMEVELHO in *.mkv; 
> do 
> 	NOMENOVO=$(echo "$NOMEVELHO" | sed 's/\[Hacchi Fansub\]_//g')
> 	mv "$NOMEVELHO" "$NOMENOVO"
> done
> 
> Obedeça cada aspa simples e dupla.
> 
> Em Thu, 28 May 2015 02:58:08 -0300
> Carlos Donizete <coringao@riseup.net> escreveu:
> 
> > Desculpe minha ignorância, não entendo muito em scripts, mas vou te
> > passar mais ou menos que entendi o que me explicou.
> > 
> > ---
> > coringao@debian:~$ cd teste/
> > coringao@debian:~/teste$ cat converte.sh 
> > #!/bin/bash
> > 
> > for Gintama in *.mkv; do
> > 
> > Gintama=$(echo -n $['Hacchi Fansub']_Gintama | sed 's/\['Hacchi
> > Fansub'\]_//g')
> > 
> > mv $ [Hacchi Fansub]_Gintama $Gintama
> > 
> > done
> > 
> > ---
> > coringao@debian:~/teste$ ls
> > converte.sh                         [Hacchi Fansub]_Gintama_223-HD.mkv
> > [Hacchi Fansub]_Gintama_221-HD.mkv  [Hacchi Fansub]_Gintama_224-HD.mkv
> > [Hacchi Fansub]_Gintama_222-HD.mkv
> > 
> > ---
> > Dentro deste diretório "teste" coloquei 4 episódios do meu desenho
> > favorito para testar. :)
> > 
> > Como faço para que estes arquivos fica somente:
> > 
> > Gintama_(numero-do-episodio).mkv
> > 
> > Quando executei o script deu este erro:
> > 
> > ---
> > coringao@debian:~/teste$ ./converte.sh 
> > ./converte.sh: line 5: 'Hacchi Fansub': syntax error: operand expected
> > (error token is "'Hacchi Fansub'")
> > sed: -e expressão #1, caractere 10: Comando `s' inacabado (s/// -
> > faltou delimitador)
> > mv: o alvo “Fansub]_Gintama” não é um diretório
> > sed: -e expressão #1, caractere 10: Comando `s' inacabado (s/// -
> > faltou delimitador)
> > ./converte.sh: line 5: 'Hacchi Fansub': syntax error: operand expected
> > (error token is "'Hacchi Fansub'")
> > mv: o alvo “Fansub]_Gintama” não é um diretório
> > ./converte.sh: line 5: 'Hacchi Fansub': syntax error: operand expected
> > (error token is "'Hacchi Fansub'")
> > sed: -e expressão #1, caractere 10: Comando `s' inacabado (s/// -
> > faltou delimitador)
> > mv: o alvo “Fansub]_Gintama” não é um diretório
> > ./converte.sh: line 5: 'Hacchi Fansub': syntax error: operand expected
> > (error token is "'Hacchi Fansub'")
> > sed: -e expressão #1, caractere 10: Comando `s' inacabado (s/// -
> > faltou delimitador)
> > mv: o alvo “Fansub]_Gintama” não é um diretório
> > coringao@debian:~/teste$
> > 
> > ---
> > 
> > Obrigado!
> > 
> > 
> > Em Qui, 2015-05-28 às 02:15 -0300, Listeiro 037 escreveu:
> > > Algo como:
> > > 
> > > for VELHONOME in *.mkv; do
> > > 
> > > NOVONOME=$(echo -n $VELHONOME | sed 's/\[Hacchi Fansub\]_//g')
> > > 
> > > mv $VELHONOME $NOVONOME
> > > 
> > > done
> > > 
> > > Geralmente eu faço esse tipo de coisa direto em linha de comando e
> > > vai direto no BASH por tentativa e erro. É algo mais ou menos
> > > assim. Crie um diretório de teste, coloque uns quatro arquivos lá e
> > > teste esse projeto de script. Se der certo com os quatro dará certo
> > > com todo o padrão.
> > > 
> > > 
> > > Em Thu, 28 May 2015 02:05:59 -0300
> > > Carlos Donizete <coringao@riseup.net> escreveu:
> > > 
> > > > Olá,
> > > > 
> > > > Curto muito animes e muitos destes arquivos que faço downloads
> > > > contem caracteres especiais ou são bem extensos os nomes.
> > > > 
> > > > Gostaria de saber um comando que consiga substituir o nome do
> > > > arquivo em sequencia sem perder a numeração. Tipo num diretório
> > > > contem uns 4 episódios.
> > > > 
> > > > coringao@debian:~$ cd teste/
> > > > coringao@debian:~/teste$ ls
> > > > [Hacchi Fansub]_Gintama_221-HD.mkv  [Hacchi
> > > > Fansub]_Gintama_223-HD.mkv [Hacchi Fansub]_Gintama_222-HD.mkv
> > > > [Hacchi Fansub]_Gintama_224-HD.mkv
> > > > 
> > > > Qual o comando certo para deixa-los exemplo deste modo:
> > > > 
> > > > coringao@debian:~/teste$ ls
> > > > Gintama_221.mkv  Gintama_223.mkv
> > > > Gintama_222.mkv  Gintama_224.mkv
> > > > 
> > > > Obrigado e ate mais!
> > > 
> > > 
> > 
> 
> 

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: