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:bash-les-differents-caracteres-speciaux [26/05/2014 10:55] Hypathie [B ) Métacaractères et méta-caractères !] |
doc:programmation:shells:bash-les-differents-caracteres-speciaux [27/05/2014 17:51] Hypathie [B ) Métacaractères et méta-caractères !] |
||
---|---|---|---|
Ligne 37: | Ligne 37: | ||
=====A ) Shell BASH ===== | =====A ) Shell BASH ===== | ||
- | **Le shell (« coquille » en anglais) est une couche logicielle qui fournit l'interface utilisateur d'un système d'exploitation. Il correspond à la couche la plus externe de ce dernier. Il se présente sous la forme d'une interface en ligne de commande accessible depuis la console ou un terminal. L'utilisateur lance des commandes sous forme d'une entrée texte exécutée ensuite par le shell.**\\ | + | **Le shell (« coquille » en anglais), il également appelé interpréteur de commandes.\\ |
+ | C'est une couche logicielle qui fournit l'interface utilisateur d'un système d'exploitation. Il correspond à la couche la plus externe de ce dernier. Il se présente sous la forme d'une interface en ligne de commande accessible depuis la console ou un terminal. L'utilisateur lance des commandes sous forme d'une entrée texte exécutée ensuite par le shell.**\\ | ||
- | **Le shell bash est l'un des shell utilisé sous gnu/linux. Pour un historique voir :** http://fr.wikipedia.org/wiki/Shell_Unix#Historique_des_shell_Unix | + | **Le shell bash est l'un des shell utilisé sous gnu/linux.**\\ |
+ | **Pour un historique et la liste des shell les plus utilisés, voir :** | ||
+ | * **http://fr.wikipedia.org/wiki/Shell_Unix#Historique_des_shell_Unix** | ||
+ | * **[[doc:programmation:shell:shell#introduction|le shell pour tous:introduction]]** | ||
- | **Qui dit shell, dit commandes, avant tout : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]]** :-) | + | Quand on installe debian wheezy, le shell par défaut est le **Shell Bash**. |
- | + | ||
- | Il existe plusieurs shell, bien souvent par défaut, c'est le **Shell Bash** qui est utilisé. | + | |
**Pour savoir quel shell vous utilisez par défaut, tapez :** | **Pour savoir quel shell vous utilisez par défaut, tapez :** | ||
Ligne 57: | Ligne 59: | ||
</code> | </code> | ||
+ | * ** Avant d'aller plus loin : [[doc:programmation:shell:shell|Le shell pour tous]]**\\ | ||
+ | * **ET qui dit shell, dit commandes : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]]** :-) | ||
**Distinguons maintenant les commandes internes et les commandes externes au shell bash, commandes simples et les commandes composées.** | **Distinguons maintenant les commandes internes et les commandes externes au shell bash, commandes simples et les commandes composées.** | ||
Ligne 170: | Ligne 174: | ||
- | =====B ) Métacaractères et méta-caractères !===== | + | ===== Quotes, apostrophe, guillemets et apostrophe inversée ===== |
+ | |||
+ | ==== Simple quote ou apostrophe ==== | ||
+ | |||
+ | Les simples quotes : ' délimitent une chaîne de caractères. \\ | ||
+ | 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> | ||
+ | $ variable='secret' | ||
+ | $ echo 'Mon mot de passe est $variable.' | ||
+ | Mon mot de passe est $variable.</code> | ||
+ | |||
+ | ==== Doubles quotes ou guillements ==== | ||
+ | |||
+ | Les doubles quotes : " délimitent une chaîne de caractères, mais les noms de variable sont interprétés par le shell. Par exemple : | ||
+ | <code bash> | ||
+ | $ variable="secret" | ||
+ | $ echo "Mon mot de passe est $variable." | ||
+ | Mon mot de passe est secret.</code> | ||
+ | |||
+ | Ceci est utile pour générer des messages dynamiques au sein d'un script. | ||
+ | |||
+ | Remarquez bien la différence entre : | ||
+ | echo coucou tout le monde | ||
+ | Ici, le shell va se trouver à interpréter chaque argument séparément. | ||
+ | |||
+ | Alors qu'ici : | ||
+ | echo "coucou tout le monde" | ||
+ | |||
+ | Le shell interprètera toute la chaîne comme un seul argument. | ||
+ | |||
+ | ==== Anti-quote ou apostrophe inversée ==== | ||
+ | |||
+ | 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'')) : | ||
+ | $ echo `variable="connu"; echo "Mon mot de passe est $variable."` | ||
+ | |||
+ | On obtiendra : | ||
+ | Mon mot de passe est connu. | ||
+ | |||
+ | Autre exemple : | ||
+ | <code bash> | ||
+ | echo `ls` </code> | ||
+ | |||
+ | Cette commande affiche le contenu du répertoire courant à l'écran. \\ | ||
+ | Elle est strictement équivalente à ls. | ||
+ | |||
+ | =====c ) Métacaractères et méta-caractères !===== | ||
====1)Définition courante de métacaractère et détail==== | ====1)Définition courante de métacaractère et détail==== | ||
Ligne 476: | Ligne 528: | ||
====2) les alias ==== | ====2) les alias ==== | ||
+ | |||
+ | * **Avant tout le chapitre : [[doc:programmation:shell:shell#alias|Le shell pour tous : Les Alias]]** | ||
+ | |||
* **L'essentiel est là : [[doc:programmation:bash:alias|Maîtriser les alias bash]]** | * **L'essentiel est là : [[doc:programmation:bash:alias|Maîtriser les alias bash]]** | ||