Lembra do rename do antigo MS-DOS? Algo parecido:

$ cat rename.sh
#!/bin/bash
[ $# -eq 2 ] && for i in *${1}; do mv "${i}" "${i%$1}${2}"; done

$ ls *htm
page1.htm  page2.htm  page3.htm  page 4.htm
$ ./rename.sh .htm .html
$ ls *html
page1.html  page2.html  page3.html  page 4.html

O interessante dessa solução é que usa apenas comandos built-in no bash, como a substituição de parâmetros, ao invés de invocar uma sub-shell.

Quer saber mais? Veja o Advanced Bash-Scripting Guide.

Tagged with:
 

Deixe um Comentário

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>