Forum Programmation.shell Script pour créer un répertoire de liens vers mes images

Posté par  (site web personnel) .
Étiquettes : aucune
0
13
mai
2005
Bonjour, je viens d'essayer de créer un script pour récupérer toutes les images en provenance d'un dossier, quelque soit l'arborescence.

Ceci afin de les intégrer automatiquement dans les fonds d'écran "diaporama" de KDE.

J'ai par exemple un répertoire ~/images
dedans j'ai un répertoire films, un autre paysages, un autre informatique.
Je crée souvent des sous répertoires et je n'ai pas envie de penser systématiquement à intégrer les nouveaux sous-répertoires dans la liste des répertoires du diaporama.

Pour ça j'ai décidé de faire un script qui lie toutes les images de mon répertoire "images" et de ses sous répertoires dans un nouveau répertoire ~/wallpapers. Mais j'aurais besoin d'aide pour l'améliorer.

le voici :


DOU="/home/melo_raf/images"
AOU="/home/melo_raf/wallpapers"
EXEC=$0.$$ #le nom de la commande, et le numero de process

## je préfère exploiter le plus possible de paramètres variables.

find "$DOU" -type f -name "*.*" ! -name ".*" -print |
while read SOURCE
do
DEST=`echo $SOURCE| tr "/" "_"`
echo ln -s \"$SOURCE\" \"$AOU/$DEST\"

##les "\" sont la pour forcer leur presence des (") dans le fichier

EXEC
done > $EXEC

chmod +x $EXEC

# view $EXEC #commande alternative pour tester le cscript
$EXEC
\rm $EXEC


Ça me crée donc des liens ayant pour nom par exemple _home_melo_raf_images_films_stalker_001.jpg (avec le nom l'arborescence complète inclue dans le nom, pour éviter les doublons)

Cependant j'aimerais savoir si je ne peux pas améliorer le script pour permettre une meilleur synchronisation, et surtout ne choisir que les images dont la hauteur est supérieure à 480 OU la largeur supérieure à 640 pixels.

Merci beaucoup à ceux qui auront le temps de m'apporter de l'aide.
  • # probeblement en utilisant

    Posté par  . Évalué à 1.

    probeblement en utilisant les elements xv qui sont scriptable
    pour le traitement d'image et donc permet d'obtenir aussi des infos sur images....ou tout autre editeur d'images capable d'uitliser le mode texte...
  • # ImageMagick ... c'est magique

    Posté par  . Évalué à 4.

    voila qui devrait te plaire :



    for image in $( find $DOU -type f ! -name ".*" )
    do
    if [ $( identify -format '%h' $image ) -gt 400 ] && [ $(identify -format '%w' $image ) -gt 600 ]
    then
    ln -i -s $image $AOU${image//\//_}
    fi

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.