Partage
  • Partager sur Facebook
  • Partager sur Twitter

erreur d'exécution de scripts

    1 juin 2023 à 12:44:46

    bonjour, 

    j'ai créé le script suivant :

     #!/bin/bash
     DESTINATION="/var/www/html/drupal/themes/danland/images/slideshows"
     echo ${DESTINATION}
     ANCIENNES="/var/www/html/drupal/themes/danland/images/slideshows/anciennes"
     echo ${ANCIENNES}
     ORIGINE="/var/www/html/annuaire/bandeaux"
     echo ${ORIGINE}
     mv -f $DESTINATION"/*.png" $ANCIENNES/
     cp $ORIGINE/* $DESTINATION
    

    si j'exécute les commandes en ligne de commande, ça fonctionne

    [root@srvintrahpgs scripts]#  mv -f /var/www/html/drupal/themes/danland/images/slideshows/*.png /var/www/html/drupal/themes/danland/images/slideshows/anciennes/
    [root@srvintrahpgs scripts]#  cp /var/www/html/annuaire/bandeaux/*.png /var/www/html/drupal/themes/danland/images/slideshows/
    [root@srvintrahpgs scripts]# ls  /var/www/html/drupal/themes/danland/images/slideshows/
    anciennes  photo01.png  photo02.png  photo03.png  photo04.png  photo05.png  photo06.png  photo07.png  photo08.png  photo09.png  photo10.png  photo11.png  photo12.png  test.png
    
    si j'exécute le script j'ai ce retour:
    [root@srvintrahpgs scripts]# ./bandeaux.sh
    /var/www/html/drupal/themes/danland/images/slideshows
    /var/www/html/drupal/themes/danland/images/slideshows/anciennes
    /var/www/html/annuaire/bandeaux
    mv: impossible d'évaluer « /var/www/html/drupal/themes/danland/images/slideshows\r/*.png »: Aucun fichier ou dossier de ce type
    cp: impossible d'évaluer « /var/www/html/annuaire/bandeaux\r/* »: Aucun fichier ou dossier de ce type
    

    je ne comprends pas pourquoi

    pouvez-vous m'aider?

    Merci d'avance
    quand je lance le script j'ai les messages suivants:




    -
    Edité par AntonioLino2 1 juin 2023 à 12:46:45

    • Partager sur Facebook
    • Partager sur Twitter
      1 juin 2023 à 21:01:58

      En mettant des quotes dans $DESTINATION"/*.png", cela veut dire chercher le fichier dont le nom est *.png, pas chercher les fichiers terminant par .png.

      Par contre, il manque des quotes sur l'utilisation des variables: mv -f "$DESTINATION/"*.png "$ANCIENNES/" (idem sur la ligne suivante). Les quotes permettent d'éviter des erreurs liées au espaces dans le contenu des variables. Bash déroule la variable puis exécute la ligne, ce qui veut dire que var='a b' ; ls $var sera exécuté comme ls a b et ls "$var" comme ls "a b".

      • Partager sur Facebook
      • Partager sur Twitter

      erreur d'exécution de scripts

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      • Editeur
      • Markdown