Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

erreur sur un script en ssh

2 réponses
Avatar
Thierry Chatelet
Bonjour,
J' ai un script pour renomer des fichiers qui tourne tr=E8s bien sur mon PC=
=2E Je=20
l' ai copi=E9 sur un autre PC auquel j' acc=E8de par ssh. Quand je l' ex=E9=
cute, j'=20
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:
=20
#! /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

2 réponses

Avatar
Edi Stojicevic
* Thierry Chatelet [2008-04-03 14:23:19 +0200] wrote :

Bonjour,
J' ai un script pour renomer des fichiers qui tourne très bien sur mon PC. Je
l' ai copié sur un autre PC auquel j' accède par ssh. Quand je l' exécute, j'
ai le message suivant:
mv: la cible `000.JPG' n'est pas un répertoire
et ce, pour chaque photo à renomer.

Voilà le script:

#! /bin/bash

x=0
for fname in *.JPG
do
mv $fname `printf "%03d.JPG" $x`
x=$(($x+1))
done

Voilà. Une idée?
Merci
Thierry



Salut,

tu peux nous donner plus d'infos sur ton repertoire. Il ne manque pas
quelque chose quelque part par rapport a la configuration de ton PC ?


Sinon tu pourrais proposer sur cette liste pour tout ce qui est lie au
scripting shell :
http://www.debianworld.org/shellscript-fr

@+

--
. ''`. (___/) E d i S T O J I C E V I C
: :' : (='.'=) http://www.debianworld.org
`. `~' (")_(") GPG: 0x1237B032
`-

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry Chatelet
On Thursday 03 April 2008 14:23, Thierry Chatelet wrote:
Bonjour,
J' ai un script pour renomer des fichiers qui tourne très bien sur mon PC.
Je l' ai copié sur un autre PC auquel j' accède par ssh. Quand je l'
exécute, j' ai le message suivant:
mv: la cible `000.JPG' n'est pas un répertoire
et ce, pour chaque photo à renomer.

Voilà le script:

#! /bin/bash

x=0
for fname in *.JPG
do
mv $fname `printf "%03d.JPG" $x`
x=$(($x+1))
done

Voilà. Une idée?
Merci
Thierry



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

Bonjour,

Je pense que le problème 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ésultat du print) est un répertoire.

Un moyen d'éviter ça serait de mettre "$fname" après le mv.

Christophe.


Et ça marche!
Merci à toi.
Thierry