OVH Cloud OVH Cloud

Variables adultes

12 réponses
Avatar
bertrille
Je viens de creer un script qui produit exactement ce que je veux:

nom de l'image,hauteur,largeur

sips -g pixelHeight -g pixelWidth *.jpg > taille.txt
grep -i '.jpg' taille.txt | sed 's|.*/||' > nom
grep 'pixelHeight' taille.txt | sed 's/.*pixelHeight: //' > haut
grep 'pixelWidth' taille.txt | sed 's/.*pixelWidth: //' > large
paste -d',' nom haut large > taille.txt ; rm nom haut large

Le probleme, c'est que je dois creer (puis detruire) des fichiers
temporaires. Ne serait-il pas plus adulte d'utiliser des variables
plutot que des fichiers? Comment?

2 réponses

1 2
Avatar
Éric Lévénez
Le 25/02/04 23:00, dans <1g9qian.qoproidv70xsN%, « JPaul »
a écrit :

Pourquoi, chez moi, la commande "sips -g pixelHeight -g pixelWidth "
me donne
"Error: Error querying file" sur tous les fichiers jpg sur lesquels je
l'essaye ?


Les noms des fichiers sont-ils simples (sans blanc, sans accent...) ?

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.

Avatar
blanc
Éric Lévénez wrote:

Les noms des fichiers sont-ils simples (sans blanc, sans accent...) ?


Oui, oui les noms sont simples...

Mais je viens de faire quelques tests, et c'est parce que le chemin du
fichier contient des accents que ça ne marche pas. Comme l'avait dit
Bertrille, mais j'avais mal lu et pas compris.

Par contre les blancs ne gènent pas chez moi. Seuls les accents et les
caractères interprétés par le shell tels que & et '.

Enfin je propose une modif à ton script Eric, pour ceux qui comme moi
ont des extensions autres que jpg (telles que jpeg, JPG,gif,...), et/ou
pour ceux qui ne veulent pas afficher tous les fichiers :

for f ; do
set `sips -g pixelHeight -g pixelWidth "$f" | tail -2` ""
echo "$f,$2,$4"
done

Dans ce cas, il suffit de mettre les fichiers qu'on veut en argument du
script. Exemple :

scripteric *.jpg *.gif machin.jpeg

Et alors , Ô miracle, si vous faites la commande

scripteric *

(presque) toutes les images du répertoires sont listées, mêmes celles
qui ont des blancs, des & et des ' dans le nom ! Mais pour les accents,
il y a encore de petits problèmes...

JPaul.

--
/==/==- Jean-Paul BLANC
/ /--/--// quelque-part (somewhere)
|/| L | en (in)
/|| = ||| FRANCE

1 2