¿No les ha pasado que quieren renombrar sus archivos en particular cuando descargan fotos de su cámara y todas tienen empiezan con HPIM ó dcim y ponerle la fecha de hoy por ejemplo 08-05-04.001.jpg, 08-05-04.002.jpg, etc ? pues a mi sí me ha pasado y también cuando las quiero subir a mi Hi5 porque la cosa estúpida sólo acepta .jpg y yo las tengo como .JPG entonces para este pequeño problema -bueno pueden hacer un script y hacer uso de sus habilidades en comandos shell, pero para que complicarse la existencia jeje ya alguien lo hizo por nosotros-
Bueno la verdad y nomás porque mi trabajo me costó!! jejeje pondré lo que estaba haciendo en un script:
for i = $(ls *.JPG | {sed{s/.JPG//}) do mv $ i.JPG $ i.jpg; done
Ay bueno pero olvidemos esa línea :’( y ocupemos algo más chido el MMV
He aquí el maravilloso MMV:
Primero escribimos en una terminal:
$ sudo apt-get install mmv
y después por ejemplo para pasar sus achivos HPIM1318.JPG HPIM1319.JPG,… a HPIM1318.jpg HPIM1319.jpg escribimos:
mmv “HPIM13*.JPG” “HPIM13#1.jpg”
Y voila! tenemos nuestros archivos con el mismo nombre pero extensión .jpg y ya podemos subirlas al Hi5 jejejeje
Bueno bueno he aquí otros ejemplos:
Funciona a base de comodines y el uso de patrones. Pongamos un ejemplo. Imagina que tienes estos archivos:
foo1.png
foo2.png
foo3.png
Si ejecutamos este comando:
mmv “foo*.png” “bar#1.png”
Obtenemos los archivos:
bar1.png
bar2.png
bar3.png
#1 en el destino hace referencia a todo lo que incluya el comodin (*) en el origen, en este caso 1,2 y 3.
Otro ejemplo:
Tenemos los ficheros:
abc_123.txt
def_456.txt
ghi_789.txt
Si ejecutamos:
mmv “*_*.txt” “#2_#1.tx”
Obtendriamos:
123_abc.txt
456_def.txt
789_ghi.txt
Es decir hemos intercambiado el contenido del primer comodin (*) por el segundo (*) ya que en el destino #1 hace referencia al primero y #2 al segundo. Cuesta un poco al principio de seguir, pero haciendo algunas pruebas se le va cogiendo el tranquillo.
Si tenemos varias fotos del tipo: dcim_01.jpg, dcim_02.jpg, etc y las quisieramos organizar por fechas podriamos hacer:
$> mmv “dcim_*.jpg” “2008-05-04.#1.jpg”
Bueno en resumidas cuentas:
- Los dos parámetros deben estar entrecomillados.
- En el primer parámetro (que ocurrencia buscar) ponemos un wildcard (
*): todo lo que encuentre entre dcim_ y .jpg entra dentro de este wildcard.
- El segundo parámetro (resultado) usa el #1 para hacer el wildcard previamente fijado, en el ejemplo #1 devolverá el primer
* (001, 002, 003, etc).
De la misma forma podemos definir varios wildcards (*) y llamarlos por su número (#1, #2, #3, etc).
Y ps ya ¿está chido no? ;)