Executer un programme bash

Bonjour,

j ai un probleme au niveau de l utilisation du langage de programmation Bash sous windows, j ai telecharger Cygwin bash shell, j l ai installe, pour l essayer, j ai creer un fichier texte que je l ai sauvegarder dans une partition H: et qu il contient les lignes suivantes pour afficher la date;

#!/bin/bash
# premier
echo -n "La date du jour est: "
date

mais le probleme c est que j ai pu pas l executer, si vous connaissez commet, svp n hesitez pas de me dire et merciiiiiiiiiiiiiii

3 réponses

  1. bonjour,

    ./"nom_du_bash"
    exemple :

    gedit test.sh

    #!/bin/bash
    # premier
    echo -n "La date du jour est: "
    date

    chmod 770 test.sh

    ./test.sh
    1
    1. merciiii; j ai essaye c q vs m aviez dit mais ca marche pas svp est ce que vs pouvez m expliquer ou j ajoute les lignes:

      gedit test.sh

      chmod 770 test.sh

      ./test.sh
      et merciiiiiiiii
      0
  2. Bonjour
    il faut sauvegarder ton fichier texte avec une extention .bat
    Tu double-cliques dessus et ça doit fonctionner, je viens de le faire sous windows 7 avec ton script et il fonctionne.
    @+
    0
    1. merciiiiiii j ai sauvegarder le fichier texte avec l extension .bat mais rien n est change , est ce que vous pouvez me detailler un peu cette procedure et merciiiiiiiiiii
      0
    2. tu crées un dossier bin sous C, puis dans le dossier bin, tu recrées un dossier batch.
      Tu ouvres le bloc notes
      tu copies le script:

      @Echo off
      Rem !bin/bash
      Rem !premier
      Rem @Echo -n "La date du jour est: "
      date

      Ensuite tu fais enregistrer sous , puis en bas dans Type (par défaut, c'est fichier texte) tu sélectionnes Tous les fichiers, et pour le nom tu mets Premier.bat.
      Tu vas dans c:\bin\batch et tu cliques deux fois sur le fichier Premier.bat .
      Normalement, tu auras dans la console:

      La date du jour est : 08/04/2011
      Entrez la nouvelle date : (jj-mm-aa)

      Si tu n'est pas en administrateur, tu fais un click droit, et executer en tant qu'administrateur.

      @+

      Un petit lien qui peut t'aider pour plus tard :
      https://tldp.org/LDP/abs/html/dosbatch.html
      0
    3. désolé, j'ai mal lu ton enoncé, ce n'ai pas ce que tu recherches, donc oubli tout ce que j'ai mis.
      @+
      0
  3. Contributeur
    Comme sous Linux il y a des permissions. Il faut donc donner les permissions d'exécution (comme le dit de manière rapide geek-fece) sur ton fichier.
    Attention, il s'agit d'un script et non d'un programme, il faut donc le lancer depuis le bash.
    0
    1. merciiiiiiii oui j lai lance a partir la console du bash mais n a pas marche; svp quelles sont ces permissions et comment faut il les ecrire dans la console et merciiiiiiiiiiiii
      0
    2. Déjà, tu donnes les droits d'exécution a ton script bash :
      pour voir les droits tu fais : "ls -l"

      geekface@GeEk-LaND:~$ ls -l
      total 152
      drwxrwxrwx 3 geekface geekface   4096 2011-04-04 15:36 Documents
      drwxr-xr-x 2 geekface geekface   4096 2011-03-31 17:11 flasheur


      Ici la première lettre "d" veut dire directory, c'est un dossier, un répertoire.
      d : répertoire
      l : lien symbolique
      c : périphérique de type caractère
      b : périphérique de type bloc
      p : fifo
      s : socket
      - : fichier classique

      rwxr-xr--
      \ /\ /\ /
      v v v
      | | droits des autres utilisateurs (o)
      | |
      | droits des utilisateurs appartenant au groupe (g)
      |
      droits du propriétaire (u)

      (r) lecture correspond à 4
      (w) écriture correspond à 2
      (x) exécution correspond à 1

      777 donne r w x r w x r w x
      605 donne r w - - - - r - x
      644 donne r w - r - - r - -
      666 donne r w - r w - r w -
      ----------------------------------------------------------------------------------------------------
      Dans ton cas tu peut faire ce que j'ai écris au début :

      chmod 770 "chemin d'accès du fichier"

      exemple :

      chmod 770 /home/geek-face/Documents/toto.txt

      toto.txt est le fichier qui aura les droits 770 : r w x r w x ---

      Une fois que ton script a les droits d'éxécution tu peux faire :

      ./"nom_de_ton_script.sh"

      ------------------------------------------------------------------------------------------------------
      geekface@GeEk-LaND:~/Documents$ sudo cat toto.sh
      #!/bin/bash
      echo -n "La date du jour est : "
      date

      geekface@GeEk-LaND:~/Documents$ ./toto.sh
      -bash: ./toto.sh: Permission non accordée

      geekface@GeEk-LaND:~/Documents$ chmod 770 toto.sh

      geekface@GeEk-LaND:~/Documents$ ./toto.sh
      La date du jour est : vendredi 8 avril 2011, 14:18:01 (UTC+0200)
      0
    3. merciiiiii, j ai essayé exactement comme vs m avez dit mais un mssg m apparait me dit:
      chmod : can not access ' le chemin du fichier '
      je ne sais pas pq,
      svp est ce que vs pouvez me dire comment doit j enregistrer le fichier (sur quelle extension ) et ou et qsq il doit contenir et exactement comment je procede dans la console ?
      psq j ai pas bien comprais c q vs avez ecrit et merciiiiiiiiiiiii
      0