Group: linux.debian.user.french
From: Thierry Chatelet
Date: Thursday, April 03, 2008 8:10 AM
Subject: =?iso-8859-1?q?R=E9solu=3A_Re=3A_erreur_sur_un_script_en?= ssh

On Thursday 03 April 2008 14:23, Thierry Chatelet wrote:
> Bonjour,
> J' ai un script pour renomer des fichiers qui tourne tr=E8s bien sur mon =
PC.
> Je l' ai copi=E9 sur un autre PC auquel j' acc=E8de par ssh. Quand je l'
> ex=E9cute, j' ai le message suivant:
> mv: la cible `000.JPG' n'est pas un r=E9pertoire
> et ce, pour chaque photo =E0 renomer.
>
> Voil=E0 le script:
>
> #! /bin/bash
>
> x=3D0
> for fname in *.JPG
> do
> mv $fname `printf "%03d.JPG" $x`
> x=3D$(($x+1))
> done
>
> Voil=E0. Une id=E9e?
> Merci
> Thierry

Christophe, je recopie ici le mail perso que tu m' as envoy=E9 pour que tou=
te la=20
liste en profite.

Bonjour,

Je pense que le probl=E8me vient de fichiers qui contiennent des espaces
dans leur nom. La variable $fname contient alors un espace, ce qui
produit deux arguments pour mv au lieu de un. La commande n'est alors
valide que si la cible (le r=E9sultat du print) est un r=E9pertoire.

Un moyen d'=E9viter =E7a serait de mettre "$fname" apr=E8s le mv.

Christophe.


Et =E7a marche!
Merci =E0 toi.
Thierry