Renomeando em massa no Shell

Errei ao dar o nome nos arquivos em apenas um parâmetro então não quero renomear um por um dos arquivos, muito menos rodar o programa novamente com o nome certo, então apenas fazemos isso:

 for i in $(ls N=10000_K=20_e=0.1_J=-6_*); do mv $i ${i/N=10000/N=100000}; done 

Nesta linha $() deposita a saída do comando ls no vetor que alimentará o laço for, então $i retorna o nome dessa variável e ${} apenas substitui a substring N=10000 contida em i pela desejada N=100000, simples assim. Acho que existe uma forma mais fácil ainda, se descobrir eu publico.

Linkbacks

Use the following URL for manually sending trackbacks: http://complex.if.uff.br/lib/plugins/linkback/exe/trackback.php/orahcio:home:rename_massive

Discussão

Enter your comment
SNOWQ
 
orahcio/home/rename_massive.txt · Última modificação: 2011/02/16 12:33 (edição externa)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0