[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Script para ejecutar un comando en cada directorio



El 4 de septiembre de 2018, 15:22, Josu
Lazkano<josu.lazkano@gmail.com> escribió:

> El arbol de directorios sera asi:
>
> /fotos/
> /fotos/2018-01 - Viaje a noseque/
> /fotos/2018-03 - Cena de amigos/
> /fotos/2018-08 - Verano con la familia/
>
> El comando es el siguiente:
>
> mogrify -delete 1 -format jpg -- *.tif

Hola, buen día.

Intenta con algo así:

    find {path} -type d | while read p; do cd "$p"; mogrify -delete 1
-format jpg -- *.tif ; done

El {path} siempre lo debes colocarlo con la ruta abasoluta dado que va
a estar cambiando y puede que no lo encuentre si lo indicas de manera
relativa.

Esto es, la ruta la debes poner "/home/user/fotos" y no hacer un cd
/home/user y poner "fotos" como path

Y claro, puedes hacer

    find fotos -type f -name '*.tif' -print0 | xargs -0 mogrify
-delete 1 -format jpg --

El print0 es para que los espacios en los nombres no genere problema

Uno de los dos te debe servir, espero

 Saludos,
 Antonio Galicia

Eram quod es, eris quod sum
--


Reply to: