Entradas Aleatorias

martes, 10 de noviembre de 2009

Linux: Renombrar múltiples ficheros en GNU/Linux

Los que utilizan la shell de GNU/Linux saben que con el comando mv no es posible renombrar varios ficheros o directorios a la vez, con lo que hay que hacer algún tipo de bucle for/while o similar para poder hacer el procedimiento deseado, no obstante se puede realizar de una manera más sencilla utilizando el comando rename.

1) Quiero renombrar todos los ficheros con extensión html a php utilizando el comando mv

$ ls
1.html 2.html 3.html
$ mv *.html ????? (no se puede realizar!)


2) Quiero renombrar todos los ficheros con extensión html a php utilizando un bucle for y mv

$ ls
1.html 2.html 3.html
$ for h in *.html; do mv $h `echo $h | sed 's/\.html/.php/'`; done
$ ls
1.php 2.php 3.php


3) Quiero renombrar todos los ficheros con extensión html a php utilizando el comando rename

$ ls
1.html 2.html 3.html
$ rename 's/\.html$/.php/' *.html
$ ls
1.php 2.php 3.php


Como se puede observar, con el comando rename la operación es mucho más sencilla y clara que utilizar for junto con mv, logrando utilizar una expresión regular para ello.

El comando rename permite realizar expresiones regulares, así que el abanico de posibilidades es muy amplio para realizar otro tipo de tareas relacionadas.

Muchas gracias a "Y tu que lees" por compartirlo,

Fuente: Y tu que lees

Artículos relacionados


Bookmark and Share

0 comentaris:

Publicar un comentario

Clicky Web Analytics
Suscríbete al Feed