Re: [ssfr] test: trop d'arguments

[ Thread Index | Date Index | More debianworld.org/shellscript-fr Archives ]


Salut,

Je ne peux pas faire de tests, car la version de file que j'ai ici ne
supporte pas --mime-type
mais au vu du message d'erreur, je dirais que sur certains fichiers
ton cut te renvoi quelque chose avec un espace. Cet espace est alors
interprété comme un séparateur d'arguments par test qui en a alors
trop.

Soit tu pipe 2 cut à suivre, soit tu uniformise tes séparateurs ( / et
espace) avec tr par exemple

++
JJL

Le 4 juin 2012 22:13, steve <dlist@xxxxxxxxxx> a écrit :
> Salut,
>
> Je désire trouver tous les fichiers image dans un répertoire, de manière
> récursive. Je suis arrivé à cela :
>
> Fichier ~/bin/trouver_image
>
> #!/bin/bash
> find "$1" -type f -exec is_image {} \ ; -print
>
> et dans le fichier ~/bin/is_image
>
> #!/bin/bash
> test $(file -b --mime-type "$1" | cut -d "/" -f1) == 'image'
>
> (je peux tout mettre dans un fichier, mais pour le moment je sépare).
>
> J'appelle le script ainsi :
>
> $ trouver_image <chemin absolu du répertoire>
>
> (pour avoir en sortie le chemin absolu des fichiers trouvés, pour une
> action ultérieure, genre déplacer ces images vers un répertoire
> particulier).
>
> En testant, ça a l'air de fonctionner mais parfois j'ai l'erreur :
>
> /home/steve/bin/is_image : line 6 : test : trop d'arguments
>
>
> Je n'arrive pas à comprendre d'où provient cette erreur.
>
> Une idée ?
>
> Merci d'avance,
> Steve
>
>



-- 
http://kubuntu.free.fr/blog



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/