Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:programmation:shells:debuter-avec-les-scripts-shell-bash [07/07/2014 15:42] Hypathie [Introduction : éviter les bashismes] |
doc:programmation:shells:debuter-avec-les-scripts-shell-bash [08/07/2014 12:52] Hypathie [Comment créer et exécuter un script ?] |
||
---|---|---|---|
Ligne 8: | Ligne 8: | ||
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=92203#p92203|Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=92203#p92203|Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
- | **Nota : wiki n°1**\\ | + | **Nota : Les autres wiki :** |
- | **Les autres numéros :** | + | |
* [[atelier:chantier:script-bash-variables-arguments-parametres|script-bash-variables-arguments-parametres]] | * [[atelier:chantier:script-bash-variables-arguments-parametres|script-bash-variables-arguments-parametres]] | ||
* [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles|script bash : modification de variable et de paramètre]] | * [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles|script bash : modification de variable et de paramètre]] | ||
Ligne 137: | Ligne 136: | ||
* Pour exécuter ce script il suffit d'inscrire **bash nom-du-script** dans un terminal (tel qu'une commande).\\ | * Pour exécuter ce script il suffit d'inscrire **bash nom-du-script** dans un terminal (tel qu'une commande).\\ | ||
<note important> | <note important> | ||
- | ATTENTION il faut penser à se déplacer dans le répertoire parent de ce script avant de lancer l'exécution. | + | Attention, il faut penser à se déplacer dans le répertoire parent de ce script avant de lancer l'exécution. |
</note> | </note> | ||
Ligne 157: | Ligne 156: | ||
Essayez maintenant : | Essayez maintenant : | ||
- | <code> | + | <code user> |
bash --posix mon-script | bash --posix mon-script | ||
</code> | </code> | ||
Ligne 165: | Ligne 164: | ||
====Le sha-bang et ./mon-script ==== | ====Le sha-bang et ./mon-script ==== | ||
- | * **Reprenons notre fichier "mon-script" (avec cette fois un autre programme, celui de la commande ls par exemple)** | + | * Reprenons notre fichier "mon-script" (avec cette fois un autre programme, celui de la commande ls par exemple). |
<code> | <code> | ||
#!/bin/bash | #!/bin/bash | ||
ls /home/utilisateur | ls /home/utilisateur | ||
</code> | </code> | ||
- | * **Vous pouvez maintenant exécuter le fichier exécutable "mon-script" en faisant :** | + | * Vous pouvez maintenant exécuter le fichier exécutable "mon-script" en faisant : |
<code user> | <code user> | ||
./mon-script | ./mon-script | ||
Ligne 183: | Ligne 182: | ||
À voir : [[atelier:chantier:la-page-man-bash-les-caracteres-speciaux#modifier-durablement-la-valeur-de-la-variable-d-environnement-path]] | À voir : [[atelier:chantier:la-page-man-bash-les-caracteres-speciaux#modifier-durablement-la-valeur-de-la-variable-d-environnement-path]] | ||
- | *Il faut pour cela placer le chemin absolu de son script dans le PATH | + | * Il faut pour cela placer le chemin absolu de son script dans le PATH |
( c'est-à-dire dans l'un des répertoires /bin, /usr/bin ou /usr/local/bin) | ( c'est-à-dire dans l'un des répertoires /bin, /usr/bin ou /usr/local/bin) | ||
Ligne 197: | Ligne 196: | ||
</code> | </code> | ||
- | * Puis éditons ~/.bashrc pour y ajouter : | + | * Puis éditons ~/.bashrc |
<code user> | <code user> | ||
Ligne 203: | Ligne 202: | ||
</code> | </code> | ||
+ | * Pour y ajouter, en dernière ligne : | ||
<code> | <code> | ||
PATH=$PATH":$HOME/MesScripts" | PATH=$PATH":$HOME/MesScripts" | ||
Ligne 216: | Ligne 216: | ||
echo "Coucou tout le monde !" | echo "Coucou tout le monde !" | ||
</code> | </code> | ||
+ | >Il s'agit là du contenu du fichier "mon-script". | ||
* Donnons à "mon-script" les droits d'exécution : | * Donnons à "mon-script" les droits d'exécution : | ||
Ligne 229: | Ligne 230: | ||
</code> | </code> | ||
- | * ré-initialiser son terminal | + | * Relancer Bash |
+ | <code user> | ||
+ | source ~/.bashrc | ||
+ | </code> | ||
+ | ou un équivalent : | ||
+ | <code user> | ||
+ | . ~/.bashrc | ||
+ | </code> | ||
Et voilà pour exécuter son script, il suffit de tapez dans le terminal le nom de son script ! | Et voilà pour exécuter son script, il suffit de tapez dans le terminal le nom de son script ! | ||
(Voir exemple ci-dessous : "Un petit script pour lancer un script depuis n'importe où !") | (Voir exemple ci-dessous : "Un petit script pour lancer un script depuis n'importe où !") | ||
Ligne 272: | Ligne 279: | ||
Pas d'inquiétude si vous ne comprenez pas tout ; vous en en serez capable après avoir suivi ce wiki et consulté ses liens. ;-) | Pas d'inquiétude si vous ne comprenez pas tout ; vous en en serez capable après avoir suivi ce wiki et consulté ses liens. ;-) | ||
Il faut : | Il faut : | ||
- | -avoir créé un fichier de type répertoire (ex: MesScripts) ; | + | - avoir créé un fichier de type répertoire (ex: MesScripts) ; |
- | -avoir modifié le fichier ~/.bashrc pour ajouter au PATH le chemin de son fichier de type répertoire (MesScripts) (comme ci-dessus); | + | - avoir modifié le fichier ~/.bashrc pour ajouter au PATH le chemin de son fichier de type répertoire (MesScripts) (comme ci-dessus); |
- | -avoir fermé le terminal et l'avoir ré-ouvert ; | + | - avoir fermé le terminal et l'avoir ré-ouvert ; |
- | -avoir créé un fichier (ex: nommé ici scriptx) ; | + | - avoir créé un fichier (ex: nommé ici scriptx) ; |
- | -avoir donné à l'utilisateur les droit d'exécution sur "scriptx" ; | + | - avoir donné à l'utilisateur les droit d'exécution sur "scriptx" ; |
- | -avoir placé "scriptx dans le répertoire MesScripts" ; | + | - avoir placé "scriptx dans le répertoire MesScripts" ; |
- | -ouvrez ce fichier "scriptx" et collez-y le code ci-dessous ; | + | - ouvrez ce fichier "scriptx" et collez-y le code ci-dessous ; |
- | -enregistrez et lancez-le depuis un terminal. | + | - enregistrez et lancez-le depuis un terminal. |
<code bash> | <code bash> |