viernes, 22 de abril de 2011

Procesar múltiples archivos a la vez con la consola de Linux

Si están en Linux y necesitan procesar muchos archivos a la vez, como por ejemplo renombrar un lote de archivos, o aplicar un comando a algunos, pueden hacerlo con la siguiente línea:

for variable in [expresión]; do comando $variable; done

Sí, un bucle for en la misma consola. variable es el nombre de la variable que representará cada archivo que concuerde con [expresión], por ejemplo para tener todos los archivos .jpg, se escribiría

for v in *.jpg;

siendo ahora v el nombre de la variable. Para obtener el nombre de cada archivo, hay que expandir el valor de la variable con el signo $. Con ese valor podemos ahora ejecutar el comando que deseemos sobre cada archivo. Para verlo bien, este ejemplo simple lista todos los archivos PDF que se encuentren en el directorio de trabajo:

for i in *.pdf; do echo $i; done

Como verán la consola de Linux es muy poderosa, por eso les recomiendo que busquen algún tutorial sobre programación en Shell para sacarle todo el provecho posible.

No hay comentarios:

Publicar un comentario