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:script-bash-variables-arguments-parametres [04/06/2014 20:08] Hypathie [Création, suppression, exportation de variables] |
doc:programmation:shells:script-bash-variables-arguments-parametres [05/06/2014 15:25] Hypathie [Références] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
======script bash : variables, arguments, paramètres ====== | ======script bash : variables, arguments, paramètres ====== | ||
- | * Objet : suite du wiki "Apprendre à rédiger des scripts sous bash" | + | * Niveau requis : {{tag>débutant}} |
- | * Niveau requis : {{tag>débutant }} | + | |
- | * Commentaires : //Contexte d'utilisation du sujet du tuto. // FIXME | + | |
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
- | * Suivi : {{tag>en-chantier à-tester à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:atelier:#tags|l'Atelier]]. | + | * Suivi : {{tag>à-placer}} |
- | * Création par **Hypathie** 03/06/2014 | + | * Création par **Hypathie** 18/03/2014 |
- | * Testé par <...> le <...> FIXME | + | * Testé par <Hypathie> le <Juin 2014> |
- | * Commentaires sur le forum : [[url | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME | + | * Commentaires sur le forum : [[url | 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°2** | + | |
+ | **Nota : wiki n°2**\\ | ||
+ | **Les autres numéros :** | ||
+ | * wiki n°1 : [[atelier:chantier:debuter-avec-les-scripts-shell-bash]] | ||
+ | | ||
+ | * wiki n°3 : [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles|script-bash-detail-sur-les-parametres]] | ||
+ | * wiki n°4 : [[atelier:chantier:script-bash-enchainement-de-commandes-et-etat-de-sortie|script-bash-enchainement-de-commandes-et-etat-de-sortie]] | ||
+ | * wiki n°5 : [[atelier:chantier:script-bash-etat-de-sorie-et-les-tests|script-bash-etat-de-sorie-et-les-tests]] | ||
+ | * wiki n°6 : [[atelier:chantier:script-bash-les-tableaux|script-bash-les-tableaux]] | ||
+ | * wiki n°7 : [[atelier:chantier:script-bash-les-fonctions|script-bash-les-fonctions]] | ||
Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | ||
Ligne 322: | Ligne 327: | ||
=====Quand les valeurs sont des paramètres ===== | =====Quand les valeurs sont des paramètres ===== | ||
+ | <note> | ||
+ | On peut considérer que les termes paramètre et argument sont synonymes.\\ | ||
+ | Le terme paramètre de position, renvoie à l'appel de la valeur des paramètres (ou arguments) passés au script. | ||
+ | </note> | ||
====Les paramètres de positions ==== | ====Les paramètres de positions ==== | ||
Lorsqu'on ajoute un argument au script avant son exécution, on peut alors récupérer la valeur de ce paramètre.\\ | Lorsqu'on ajoute un argument au script avant son exécution, on peut alors récupérer la valeur de ce paramètre.\\ | ||
- | * **Pour récupérer chaque paramètre : $1 ; $2 ; $3** etc. | + | * Pour récupérer chaque paramètre : $1 ; $2 ; $3 etc. |
- | * **Pour récupérer tous les paramètres : $@** | + | * Pour récupérer tous les paramètres : $@ |
EXEMPLES : soit le script "essai.sh" | EXEMPLES : soit le script "essai.sh" | ||
Ligne 359: | Ligne 367: | ||
</code> | </code> | ||
- | * **Tous les arguments passés au scripts $* et $@ sont synonymes** | + | * Tous les arguments passés au scripts $* et $@ sont synonymes |
<code bash> | <code bash> | ||
#!/bin/bash | #!/bin/bash | ||
Ligne 380: | Ligne 388: | ||
</code> | </code> | ||
- | * **de même pour $* et $@ :** | + | * Là de même pour $* et $@ : |
<code bash> | <code bash> | ||
#!/bin/bash | #!/bin/bash | ||
Ligne 401: | Ligne 409: | ||
</code> | </code> | ||
- | * **Mais avec la commande set qui modifie provisoirement les paramètres :** | + | * Mais avec la commande set qui modifie provisoirement les paramètres : |
Pour plus de détails sur la commande set voir : [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles?&#syntaxe-de-set]] | Pour plus de détails sur la commande set voir : [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles?&#syntaxe-de-set]] | ||
<code bash> | <code bash> | ||
Ligne 451: | Ligne 459: | ||
=====Récupérer la longueur d'une valeur de variable===== | =====Récupérer la longueur d'une valeur de variable===== | ||
- | * **Pour obtenir la longueur d'une chaîne stockée dans une variable, on écrit ${#VAR}.** | + | * Pour obtenir la longueur d'une chaîne stockée dans une variable, on écrit ${#VAR}. |
Exemples : | Exemples : | ||
Ligne 460: | Ligne 468: | ||
</code> | </code> | ||
- | * ** Pour récupérer la longueur d'un paramètre de position** | + | * Pour récupérer la longueur d'un paramètre de position |
FIXME | FIXME | ||
Ligne 466: | Ligne 474: | ||
=====Substitutions de commande===== | =====Substitutions de commande===== | ||
+ | ====Utilisation ==== | ||
Permet de se servir de la sortie d'une commande dans un autre contexte pour ; | Permet de se servir de la sortie d'une commande dans un autre contexte pour ; | ||
- affecter cette sortie à une variable ; | - affecter cette sortie à une variable ; | ||
Ligne 472: | Ligne 480: | ||
- etc. | - etc. | ||
- | Il y a deux syntaxes : | + | ====deux syntaxes :==== |
<code> | <code> | ||
`commande` | `commande` | ||
Ligne 659: | Ligne 667: | ||
* base 16(hexadécimal): un chiffre précédé de **0x**\\ | * base 16(hexadécimal): un chiffre précédé de **0x**\\ | ||
exemple : 0x3 => 3 en base 16 | exemple : 0x3 => 3 en base 16 | ||
- | * autres bases : base#nombre | + | * autres bases : **base#nombre** |
* base maximale : base 64 | * base maximale : base 64 | ||
Ligne 665: | Ligne 673: | ||
[[doc:programmation:shell:shell#variables-et-environnement|Le shell pour tous : "Variables et environnement"]]\\ | [[doc:programmation:shell:shell#variables-et-environnement|Le shell pour tous : "Variables et environnement"]]\\ | ||
- | [[doc:programmation:shell:variables]] | + | [[doc:programmation:shell:variables]]\\ |
+ | [[http://abs.traduc.org/abs-fr/ch04.html|Guide avancé d'écriture des scripts Bash : Introduction aux variables et aux paramètres]] | ||
+ | =====La suite c'est ici ===== | ||
+ | [[atelier:chantier:script-bash-detail-sur-les-parametres-et-les-boucles|script-bash-detail-sur-les-parametres]] |