# Scripts marche pour une image mais pas pour 8Go img !

**URL:** <https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643 "2016-02-21T13:10:17Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/1 "2016-02-21T13:10:17Z")

</div>

Bonjour,  
ces scripts:

[code]#!/bin/bash

## Traitement

while [[-n “$1”]]; do  
if [[-f “$1”]]; then  
jhead -autorot "$1"  
elif [[-d “$1”]]; then  
#iname – case insensitive  
find “$1” -iname “\*.jpg” -exec jhead -autorot {} ;  
fi  
shift  
done  
zenity --info --title=“Traitement” --text=“Terminé !!!..”[/code]

[code]#!/bin/bash -x  
title=“Choisissez la résolution d’image souhaité’“  
imgsize=`zenity --title "$title" --list --separator=" " --column="size" "160x120" "320x240" "640x480" "800x600" "1024x768" "1920x1080" "1900x1600"`  
if [“$?” != 0] ; then  
exit  
fi  
#user have to select target size  
#imgsize=`echo $imgsize | sed 's/ max//g'`  
imgsize=$ {imgsize/ max/}  
if [! “$imgsize”]; then  
zenity --error --title=“error” --text=“select a target size"  
exit  
fi  
#To respect proportions  
himgsize=$imgsize  
#val1=`echo "$imgsize" | awk -F'x' '{ print $1 }'`  
val1=”${imgsize##x\*}“  
imgsize=”${val1}x${val1}”  
############################  
echo “$JAUNE”“Les photos du répertoire courant : “$VERT” “$REPERTOIRE\_SOURCE” “$NORMAL”, vont être redimenssionnées aux valeurs suivantes :”$VERT” “$imgsize”""$NORMAL"

for I in \*  
do echo “Redimensionnement de : “$VERT” $I”"$NORMAL"  
convert -filter Cubic -resize $imgsize $I $I  
done

echo "changement des noms de fichier en cour"  
for i in \*  
do mv $i `echo $i | tr [:upper:] [:lower:]`;done  
zenity --info --title=“Traitement” --text=“Terminé !!!..”[/code]

fonctionne à merveille pour quelques images, mais de retour de vacances je me retrouve avec 8Go dans un dossier et là, il ne fonctionne pas.  
Quelqu’un pourrait me le débugger ?

Merci.

[PS] En ajoutant -x au shebang je n’ai pas d’infos !!!

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/2 "2016-02-21T13:10:18Z")

</div>

> [@chris38](#):
>
> il ne fonctionne pas.

Avec autant d’informations, ma boule de cristal ne fonctionne pas vraiment. ![:mrgreen:](https://www.debian-fr.org/uploads/default/original/1X/cc83e9b583138e48ff45f96609046b06d06c7f9d.gif "Mr. Green")

J’en profite pour déplacer vers Programmation, ça y sera plus à sa place.

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/3 "2016-02-21T13:10:18Z")

</div>

> [@syam](#):
>
> [quote=«&nbsp;chris38&nbsp;»]il ne fonctionne pas.

Avec autant d’informations, ma boule de cristal ne fonctionne pas vraiment. ![:mrgreen:](https://www.debian-fr.org/uploads/default/original/1X/cc83e9b583138e48ff45f96609046b06d06c7f9d.gif "Mr. Green")

J’en profite pour déplacer vers Programmation, ça y sera plus à sa place.[/quote]

Je ne peux rien donner de plus car il ne ce passe rien, malheureusement pour moi, je lance le script et rien … sauf à l’unité !

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/4 "2016-02-21T13:10:18Z")

</div>

Après quelques essais, je ne peux selectionnés que !! 6,4Go de données et un Meg de plus ![:013](https://www.debian-fr.org/uploads/default/original/1X/086709e9e4d48f0fa24e42243bbce857fc2be47f.gif "colere")

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/5 "2016-02-21T13:10:18Z")

</div>

Je doute que ça ait quoi que ce soit à voir avec la taille, vu que tu traites tes images une par une. Ça bloque à partir de combien de fichiers ?

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/6 "2016-02-21T13:10:18Z")

</div>

> [@chris38](#):
>
> [PS] En ajoutant -x au shebang je n’ai pas d’infos !!!

Euh y’a un truc qui me gêne là… Qu’est-ce que tu entends précisément par «&nbsp;je n’ai pas d’infos&nbsp;» ? -x doit t’afficher la liste des commandes exécutées, c’est pas des informations ça ?

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/7 "2016-02-21T13:10:19Z")

</div>

> [@syam](#):
>
> Je doute que ça ait quoi que ce soit à voir avec la taille, vu que tu traites tes images une par une. Ça bloque à partir de combien de fichiers ?

6.4Go et pas 1Meg de plus …  
Mes fichiers je les traitent un à un car je peux pas le faire par lot ! …

---

<div class="post-metadata">

**Author:** ![Mimoza](https://www.debian-fr.org/user_avatar/www.debian-fr.org/mimoza/32/3858_2.png) [@Mimoza](https://www.debian-fr.org/u/Mimoza)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/8 "2016-02-21T13:10:24Z")

</div>

Il te demande un nombre de fichier et toi tu lui répond par une taille ![:033](https://www.debian-fr.org/uploads/default/original/1X/42cd8bd0447ecac24cdff1e26fa990a5c8442791.gif "petard")

Si mettre un «&nbsp;set -x&nbsp;» ne te donne rien on peut difficilement t’aider a moins de faire ton boulot en testant de notre coté ton script en debug … 😒

PS : Et mettre 4 point d’exclamation à ton titre ne servira qu’a faire fuir de possible participant. ![:whistle:](https://www.debian-fr.org/uploads/default/original/1X/899b2c331f8cc02517f77948602974610a95f952.gif "Whistle")

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/9 "2016-02-21T13:10:27Z")

</div>

> [@Mimoza](#):
>
> Il te demande un nombre de fichier et toi tu lui répond par une taille ![:033](https://www.debian-fr.org/uploads/default/original/1X/42cd8bd0447ecac24cdff1e26fa990a5c8442791.gif "petard")

C’est sûr que c’est plus simple que de compter le nombre de fichiers…on va dire approximativement 1500 sur 3200 .

> [@Mimoza](#):
>
> Si mettre un «&nbsp;set -x&nbsp;» ne te donne rien on peut difficilement t’aider a moins de faire ton boulot en testant de notre coté ton script en debug … 😒

Effectivement, mais je n’ai pas plus d’info que RIEN !

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/10 "2016-02-21T13:10:27Z")

</div>

> [@chris38](#):
>
> [quote=«&nbsp;Mimoza&nbsp;»]Si mettre un «&nbsp;set -x&nbsp;» ne te donne rien on peut difficilement t’aider a moins de faire ton boulot en testant de notre coté ton script en debug … 😒

Effectivement, mais je n’ai pas plus d’info que RIEN ![/quote]  
Vu tes scripts ça devrait au moins afficher les premières lignes qui n’ont strictement rien à voir avec les fichiers traités :

[code]$ cat test  
#!/bin/bash -x  
echo test  
$ ./test

- echo test  
test[/code]  
Si ça n’affiche rien du tout c’est que tu fais quelque chose de travers, à toi de trouver quoi.

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/11 "2016-02-21T13:10:31Z")

</div>

> [@syam](#):
>
> [quote=«&nbsp;chris38&nbsp;»][quote=«&nbsp;Mimoza&nbsp;»]Si mettre un «&nbsp;set -x&nbsp;» ne te donne rien on peut difficilement t’aider a moins de faire ton boulot en testant de notre coté ton script en debug … 😒

Effectivement, mais je n’ai pas plus d’info que RIEN ![/quote]  
Vu tes scripts ça devrait au moins afficher les premières lignes qui n’ont strictement rien à voir avec les fichiers traités :

[code]$ cat test  
#!/bin/bash -x  
echo test  
$ ./test

- echo test  
test[/code]  
Si ça n’affiche rien du tout c’est que tu fais quelque chose de travers, à toi de trouver quoi.[/quote]

En ligne de commande j’ai ceci à la selection de tous les fichiers :

`irena@lagache:~/Images/Photos/2012/CAP-2- NE PAS UTILISER$ sh autorotate.sh
autorotate.sh: 11: [[: not found
`

ca c’est pour le premier script donné +haut.

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/12 "2016-02-21T13:10:32Z")

</div>

Essaie avec ça :

[code]#!/bin/bash

## Traitement

for fil in “$@” ; do  
if [[-f “${fil}”]]; then  
jhead -autorot "${fil}"  
elif [[-d “${fil}”]]; then  
#iname – case insensitive  
find “${file}” -iname “\*.jpg” -exec jhead -autorot {} ;  
fi  
done  
zenity --info --title=“Traitement” --text=“Terminé !!!..”[/code]

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/13 "2016-02-21T13:10:33Z")

</div>

> [@chris38](#):
>
> En ligne de commande j’ai ceci à la selection de tous les fichiers :

Tu ne lançais pas le script en ligne de commande et tu t’étonnais qu’il ne t’affiche aucun message ? ![:119](https://www.debian-fr.org/uploads/default/original/1X/0287f377b0e103e172422ffbbe8c639fd3e12c9e.gif "vertige")

[quote=«&nbsp;chris38&nbsp;»]`irena@lagache:~/Images/Photos/2012/CAP-2- NE PAS UTILISER$ sh autorotate.sh
autorotate.sh: 11: [[: not found`[/quote]  
Bash te renvoie une erreur sur la ligne 11, dans le script que tu nous as donné la ligne 11 c’est «&nbsp;done&nbsp;» qui ne contient aucun [[.  
Si tu nous donnais les scripts complets ça aiderait…

Autre chose : quand tu appelles ton script avec sh nomduscript il ignore le shebang, c’est normal. Ton script contient des [[ qui sont spécifiques à Bash, il faut donc soit le lancer avec bash nomduscript, soit le rendre exécutable et le lancer avec /chemin/vers/nomduscript.

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/14 "2016-02-21T13:10:34Z")

</div>

[quote=«&nbsp;syam&nbsp;»][quote=«&nbsp;chris38&nbsp;»]`irena@lagache:~/Images/Photos/2012/CAP-2- NE PAS UTILISER$ sh autorotate.sh
autorotate.sh: 11: [[: not found`[/quote]  
Bash te renvoie une erreur sur la ligne 11, dans le script que tu nous as donné la ligne 11 c’est «&nbsp;done&nbsp;» qui ne contient aucun [[.  
Si tu nous donnais les scripts complets ça aiderait…[/quote]  
J’ai imaginé qu’il pointé sur le «&nbsp;done&nbsp;». Une erreur qu’il trouve sur le while. Mais j’ai pas vérifié avant et comme je n’aime pas le while + shift et préfère le for…in, j’ai foncé peut être un peu vite.

> [@syam](#):
>
> Autre chose : quand tu appelles ton script avec sh nomduscript il ignore le shebang, c’est normal. Ton script contient des [[ qui sont spécifiques à Bash, il faut donc soit le lancer avec bash nomduscript, soit le rendre exécutable et le lancer avec /chemin/vers/nomduscript.

En effet on a déjà eu ce genre de cas. Faudrait peut être éditer un certains nombre d’astuce à vérifier avant de venir chouiner ici (sans que ce soit une règles juste une recommandation).

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/15 "2016-02-21T13:10:34Z")

</div>

> [@MisterFreez](#):
>
> J’ai imaginé qu’il pointé sur le «&nbsp;done&nbsp;». Une erreur qu’il trouve sur le while.

Tu m’as mis un doute du coup je viens de vérifier : sh indique bien la ligne réelle de l’erreur, le script n’est pas complet.

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/16 "2016-02-21T13:10:35Z")

</div>

[quote=“syam”]…  
Bash te renvoie une erreur sur la ligne 11, dans le script que tu nous as donné la ligne 11 c’est “done” qui ne contient aucun [[.  
Si tu nous donnais les scripts complets ça aiderait…  
…[/quote]

Ils sont complets tels quels ! je les utilises comme cela depuis pas mal de temps maintenant. mais sur un certains nombres de fichiers ca fonctionne mais pas audelà.

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/17 "2016-02-21T13:10:36Z")

</div>

> [@chris38](#):
>
> Ils sont complets tels quels !

C’est étrange, chez moi quand je lance le premier script à ta manière (sh nomduscript) ça me renvoie ça :

`$ sh ./test
./test: 3: ./test: [[: not found`  
Tu comprends donc que j’aie tendance à en conclure que 8 lignes sont passées à la trappe. 😉  
Je vais essayer sur une Squeeze pour voir si ça fait une différence avec ma testing.

Edit : ok, au temps pour moi, sur Squeeze ça m’indique bien la ligne 11 aussi. Mes excuses.  
Mais ça ne change rien à ma remarque précédente :

> [@syam](#):
>
> Autre chose : quand tu appelles ton script avec sh nomduscript il ignore le shebang, c’est normal. Ton script contient des [[ qui sont spécifiques à Bash, il faut donc soit le lancer avec bash nomduscript, soit le rendre exécutable et le lancer avec /chemin/vers/nomduscript.

MisterFreez t’a également donné une possible solution.

---

<div class="post-metadata">

**Author:** ![chris38](https://www.debian-fr.org/user_avatar/www.debian-fr.org/chris38/32/12918_2.png) [@chris38](https://www.debian-fr.org/u/chris38)\
**Post date:** [Février 21, 2016, 1:10 UTC](https://www.debian-fr.org/t/scripts-marche-pour-une-image-mais-pas-pour-8go-img/54643/18 "2016-02-21T13:10:37Z")

</div>

[quote=«&nbsp;syam&nbsp;»]…  
Mais ça ne change rien à ma remarque précédente :

> [@syam](#):
>
> Autre chose : quand tu appelles ton script avec sh nomduscript il ignore le shebang, c’est normal. Ton script contient des [[ qui sont spécifiques à Bash, il faut donc soit le lancer avec bash nomduscript, soit le rendre exécutable et le lancer avec /chemin/vers/nomduscript.

MisterFreez t’a également donné une possible solution.[/quote]

Je vois demain ,merci.
