Páginas

miércoles, 29 de marzo de 2017

BASH: Aplicar una orden o comando a los todos los ficheros de un directorio




BASH: Aplicar una orden/comando a los todos los ficheros de un directorio



Esta mañana me he encontrado un pequeño problema: Tenia una serie de archivos .pdf, que los tenia que girar 180º. Sabía que con el comando pdftk, los podía girar, pero eso era uno a uno. Entonces, buscando por google, encontré la forma de hacer un pequeño script para leer todos los ficheros del directorio y aplicarle la orden de giro uno a uno automáticamente:



El script lo escribí en el editor nano, y luego solo le tuve que dar permisos de ejecución para ejecutarlos dentro del directorio donde tenia los ficheros .pdf

Nota: Cuidado con el nombre de los archivos, que deben de ser sin espacios

Fuentes:
https://www.gambas-es.org/viewtopic.php?f=14&p=37405#p37405




Código RAW del archivo:
#! /bin/bash
girado="Girado"
for archivoActual in $(ls -la *.pdf|awk '{print $9}');do
echo $archivoActual

pdftk A=$archivoActual cat A1-endDown output $archivoActual$girado.pdf

echo "Girado a..."$archivoActual$girado.pdf
done