[shell] problème de syntaxe

Résolu
Bonjour,

Je me suis fait un petit shell pour renommer des fichiers en séries. Il a bien fonctionner jusqu'à aujourd'hui, mais j'ai du faire une erreur que je n'arrive pas à trouver. Il semble qu'il y est une erreur de syntaxe à la ligne du mv.

Voici le code :

#!/bin/bash

#A modifier pour le répertoire
cd xx/xx/xx

# mettre les bons numeros
for i in {186..202]
#mettre les noms de fichier
mv 'XX.XX'$i'XX' 'XX'.$i'xx'
echo $i
done

J'espère que vous pourrez m'aider même si je ne peux pas mettre les noms des documents.

Merci d'avance.

4 réponses

  1. Salut,

    Chez moi ton code semble fonctionner. C'est quoi le message d'erreur exact ?
    0
    1. salut,

      quel est le message d'erreur ?

      for i in {186..202}
      0
      1. Oh quel con, j'avais juste testé la ligne mv, honte à moi...

        Enfait comme dit plus haut tu as un ] à la place d'un } et tu as oublié le do après la ligne for

        #!/bin/bash
        
        #A modifier pour le répertoire
        cd xx/xx/xx
        
        # mettre les bons numeros
        for i in {186..202}
        do
               #mettre les noms de fichier
               mv 'XX.XX'$i'XX' 'XX'.$i'xx'
               echo $i
        done
        
        0
        1. Merci en fait c'est le do qui manquait, le crochet était juste une erreur en recopiant le code !

          Merci bien à tous ;)
          0