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:bash [04/11/2012 15:23] smolski |
doc:programmation:bash [22/09/2013 23:31] 127.0.0.1 modification externe |
||
---|---|---|---|
Ligne 17: | Ligne 17: | ||
\\ | \\ | ||
- | Objet : Le shell bas\\ | + | Objet : Le shell bash\\ |
Niveau requis : DEBUTANT\\ | Niveau requis : DEBUTANT\\ | ||
- | Débutant, à savoir : [[manuel: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à !.]] :-) |
===== Le Shell ===== | ===== Le Shell ===== | ||
- | Le Shell est un interpréteur (ou interface) de lignes de commande, ce programme fonctionne à partir d'instructions en mode texte saisies dans la/le [[manuel:terminal|console/terminal]]. | + | Le Shell est un interpréteur (ou interface) de lignes de commande, ce programme fonctionne à partir d'instructions en mode texte saisies dans la/le [[:doc:systeme:terminal|console/terminal]]. |
Il existe plusieurs shell, bien souvent par défaut, c'est le **Shell Bash** qui est utilisé. | Il existe plusieurs shell, bien souvent par défaut, c'est le **Shell Bash** qui est utilisé. | ||
Ligne 46: | Ligne 46: | ||
Même si cette chaîne contient des commandes ou des variables shell, celles-ci ne seront pas interprétées. Par exemple : | Même si cette chaîne contient des commandes ou des variables shell, celles-ci ne seront pas interprétées. Par exemple : | ||
<code bash> | <code bash> | ||
- | $ variable="secret" | + | $ variable='secret' |
$ echo 'Mon mot de passe est $variable.' | $ echo 'Mon mot de passe est $variable.' | ||
Mon mot de passe est $variable.</code> | Mon mot de passe est $variable.</code> | ||
Ligne 71: | Ligne 71: | ||
==== Anti-quote ou apostrophe inversée ==== | ==== Anti-quote ou apostrophe inversée ==== | ||
- | Bash considère que les anti-quotes : ` délimitent une commande à exécuter. \\ | + | Bash considère que les anti-quotes (`) délimitent une commande à exécuter. \\ |
- | Les noms de variable et les commandes sont donc interprétés. Par exemple en mettant toute cette commande entre deux Anti-quotes((L'anti-quote s'obtient avec les 2 touches simultanées du clavier : ''AltGr 7'')) : | + | Les noms de variable et les commandes sont donc interprétés. |
- | `variable="connu"; echo "Mon mot de passe est $variable."` | + | |
- | Donnera : | + | Par exemple en mettant toute cette commande entre deux Anti-quotes((L'anti-quote s'obtient avec les 2 touches simultanées du clavier : ''AltGr 7'')) : |
- | <code bash> | + | $ echo `variable="connu"; echo "Mon mot de passe est $variable."` |
- | $ echo `variable="connu"; echo "Mon mot de passe est $variable."` | + | |
- | Mon mot de passe est connu.</code> | + | On obtiendra : |
+ | Mon mot de passe est connu. | ||
Autre exemple : | Autre exemple : | ||
Ligne 97: | Ligne 97: | ||
Et si VARIABLE = "C'ESTLE", nous obtiendrons pour la signification de VARIABLE1 : | Et si VARIABLE = "C'ESTLE", nous obtiendrons pour la signification de VARIABLE1 : | ||
- | C'ESTLERESTEDELACHAINE | + | echo VARIABLE1="${VARIABLE}RESTEDELACHAINE" |
+ | VARIABLE1=C'ESLERESTEDELACHAINE | ||
//Merci à //**enikar**//, toujours vaillant sur l'irc df !// ;-) | //Merci à //**enikar**//, toujours vaillant sur l'irc df !// ;-) | ||
Ligne 109: | Ligne 110: | ||
===== Les commandes Linux ===== | ===== Les commandes Linux ===== | ||
- | * [[manuel:ligne_de_commande_et_commandes#gnu_linux-_les_commandes | Les commandes Linux]] | + | * [[:#gnu_linux-_les_commandes | Les commandes Linux]] |
===== Répertoires et chemins ===== | ===== Répertoires et chemins ===== | ||
- | * [[manuel:repertoire | Les répertoires et chemins]] | + | * [[:doc:programmation:shell:repertoires | Les répertoires et chemins]] |
===== Ligne de commmande ===== | ===== Ligne de commmande ===== | ||
- | Vous avez déjà sûrement utilisé des commandes à partir des définitions présentes à la page [[manuel:ligne_de_commande_et_commandes#gnu_linux-_les_commandes|Les commandes Linux]]\\ | + | Vous avez déjà sûrement utilisé des commandes à partir des définitions présentes à la page [[:#gnu_linux-_les_commandes|Les commandes Linux]]\\ |
Voir : | Voir : | ||
- | * [[manuel:ligne_de_commande_et_commandes | La ligne de commande]] | + | * [[: | La ligne de commande]] |
===== Métacaractères ===== | ===== Métacaractères ===== | ||
Débutant avisé, voir : | Débutant avisé, voir : | ||
- | * [[commande:les_metacaracteres|Les métacaractères, ou globs, ou encore patterns]] | + | * [[:doc:programmation:shell:les-metacaracteres|Les métacaractères, ou globs, ou encore patterns]] |
| | ||
===== Alias ===== | ===== Alias ===== | ||
- | Lorsque vous tapez plusieurs lignes de commande différentes et répétitives à la suite, il est intéressant de les rédiger toutes ensembles dans un seul texte (un //script//) afin de les appeler d'un coup à l'aide d'un mot clé nommé : [[commande:alias|un alias]]. | + | Lorsque vous tapez plusieurs lignes de commande différentes et répétitives à la suite, il est intéressant de les rédiger toutes ensembles dans un seul texte (un //script//) afin de les appeler d'un coup à l'aide d'un mot clé nommé : [[:doc:programmation:bash:alias|un alias]]. |
Pour voir où et comment réaliser un tel script : | Pour voir où et comment réaliser un tel script : | ||
- | * [[bash:alias2|Réalisation d'un Script contenant des Alias]] | + | * [[:doc:programmation:bash:alias2|Réalisation d'un Script contenant des Alias]] |
===== Script ===== | ===== Script ===== | ||
Ligne 141: | Ligne 142: | ||
Pour les DÉBUTANTS AVISÉS et anglophile, voir là : | Pour les DÉBUTANTS AVISÉS et anglophile, voir là : | ||
- | * [[scripts_bash | Des scripts à foison commentés en anglais]] | + | * [[:doc:programmation:shell:scripts | Des scripts à foison commentés en anglais]] |
//Merci à //**cthuluh**// pour nous avoir proposé ce lien.// :-) | //Merci à //**cthuluh**// pour nous avoir proposé ce lien.// :-) | ||
+ | |||
===== Liens et remerciements ===== | ===== Liens et remerciements ===== |