Executer un programme bash
mary
-
fleche-bleue Messages postés 453 Date d'inscription Statut Membre Dernière intervention -
fleche-bleue Messages postés 453 Date d'inscription Statut Membre Dernière intervention -
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
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
-
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 -
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.
@+-
-
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 -
-
-
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.-
-
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) -
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
-