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 Les deux révisions suivantes | ||
doc:programmation:shells:bash-les-differents-caracteres-speciaux [04/10/2015 18:15] milou [Bash : Vision d'ensemble] |
doc:programmation:shells:bash-les-differents-caracteres-speciaux [04/10/2015 18:31] milou [Shell BASH] |
||
---|---|---|---|
Ligne 60: | Ligne 60: | ||
La commande ''env'' permet de lister les variables d'environnement du contexte qui l'exécute. | La commande ''env'' permet de lister les variables d'environnement du contexte qui l'exécute. | ||
<code user>env</code> | <code user>env</code> | ||
- | <code>SHELL=/bin/bash</code> | + | <file config retour de la commande>SHELL=/bin/bash</file> |
>Le retour est copieux ! | >Le retour est copieux ! | ||
>Mais on trouve dans la liste la ligne ci-dessus | >Mais on trouve dans la liste la ligne ci-dessus | ||
Ligne 71: | Ligne 71: | ||
Plus directement, on peut faire : | Plus directement, on peut faire : | ||
<code user>echo $SHELL</code> | <code user>echo $SHELL</code> | ||
- | <code>/bin/bash</code> | + | <file config retour de la commande>/bin/bash</file> |
;-) | ;-) | ||
Ligne 78: | Ligne 78: | ||
Pour connaître la version de votre shell Bash, tapez : | Pour connaître la version de votre shell Bash, tapez : | ||
<code user>bash --version</code> | <code user>bash --version</code> | ||
- | <code>GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu) | + | <file config retour de la commande>GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu) |
- | Copyright (C) 2007 Free Software Foundation, Inc.</code> | + | Copyright (C) 2007 Free Software Foundation, Inc.</file> |
=== En savoir plus === | === En savoir plus === | ||
Ligne 113: | Ligne 113: | ||
<note> | <note> | ||
* Pour connaître la liste des commandes installées sur son système, on peut lister le contenu des dossiers suivants : | * Pour connaître la liste des commandes installées sur son système, on peut lister le contenu des dossiers suivants : | ||
- | * ''/bin/''((''ls /bin'' affiche la liste des commandes externes essentielles utilisées par le système pendant le démarrage, mais utilisables par tous les utilisateurs.)) | + | * ''/bin/''((''ls /bin'' affiche la liste des commandes externes essentielles utilisées par le système pendant le démarrage, mais utilisables par tous les utilisateurs.))\\ |
- | * ''/sbin/''((''ls /sbin'' affiche la liste des commandes externes essentielles utilisées par le système pendant le démarrage, et souvent réservées à l'administrateur (root))) | + | * ''/sbin/''((''ls /sbin'' affiche la liste des commandes externes essentielles utilisées par le système pendant le démarrage, et souvent réservées à l'administrateur (root)))\\ |
- | * ''/usr/bin/'' et ''/usr/sbin/''((''ls /usr/bin /usr/sbin'' affiche la liste des commandes externes secondaires, non utilisées pendant le démarrage du système, et respectement utilisables par tous ou plutôt réservées à l'administrateur)) | + | * ''/usr/bin/'' et ''/usr/sbin/''((''ls /usr/bin /usr/sbin'' affiche la liste des commandes externes secondaires, non utilisées pendant le démarrage du système, et respectement utilisables par tous ou plutôt réservées à l'administrateur)) |
- | * Pour affiche le chemin d'une commande ainsi que celui de sa page man : | + | * Pour afficher le chemin d'une commande ainsi que celui de sa page man : |
<code user>whereis nom_commande</code> | <code user>whereis nom_commande</code> | ||
Ligne 133: | Ligne 133: | ||
**Pour connaître le statut d'une commande, avec bash, on peut utiliser la commande interne type**:\\ | **Pour connaître le statut d'une commande, avec bash, on peut utiliser la commande interne type**:\\ | ||
<code user>type cd</code> | <code user>type cd</code> | ||
- | <code>cd est une primitive du shell | + | <file config retour de la commande>cd est une primitive du shell |
- | </code> | + | </file> |
<code user>type cp</code> | <code user>type cp</code> | ||
- | <code>cp est /bin/cp</code> | + | <file config retour de la commande>cp est /bin/cp</file> |
<code user>type sleep</code> | <code user>type sleep</code> | ||
- | <code>sleep est /bin/sleep</code> | + | <file config retour de la commande>sleep est /bin/sleep</file> |
>''/bin/commande'' signifie donc que c'est une commande externe. | >''/bin/commande'' signifie donc que c'est une commande externe. | ||
<code user>type ls</code> | <code user>type ls</code> | ||
- | <code>ls est un alias vers « ls --color=auto »</code> | + | <file config retour de la commande>ls est un alias vers « ls --color=auto »</file> |
<code user>whereis ls</code> | <code user>whereis ls</code> | ||
- | <code>ls: /bin/ls /usr/share/man/man1/ls.1.gz</code> | + | <file config retour de la commande>ls: /bin/ls /usr/share/man/man1/ls.1.gz</file> |
<code user>which ls</code> | <code user>which ls</code> | ||
- | <code>/bin/ls</code> | + | <file config retour de la commande>/bin/ls</file> |
>''ls'' est donc l'alias de la commande externe ''/bin/ls'' | >''ls'' est donc l'alias de la commande externe ''/bin/ls'' | ||
</note> | </note> | ||
Ligne 207: | Ligne 207: | ||
=== Exemple pratique : tuer un processus === | === Exemple pratique : tuer un processus === | ||
- | Imaginons que vous vous êtes endormi devant votre messagerie.\\ A votre réveille 8-o : impossible de fermer la fenêtre de icedove avec la souris.\\ | + | Imaginons que vous vous êtes endormi devant votre messagerie.\\ A votre réveil 8-o : impossible de fermer la fenêtre de icedove avec la souris.\\ |
Dans ce cas, le plus simple est tuer le processus d'exécution de icedove. | Dans ce cas, le plus simple est tuer le processus d'exécution de icedove. | ||
* Retrouver le processus : | * Retrouver le processus : | ||
- | - ouvrir par exemple tty1 : ''ctrl+Alt+F1'' | + | - ouvrir par exemple tty1 : <key>C-A-F1</key> |
- se loguer et entrer son mot de passe utilisateur | - se loguer et entrer son mot de passe utilisateur | ||
- récupérer le PID du processus icedove : | - récupérer le PID du processus icedove : | ||
Ligne 218: | Ligne 218: | ||
ps -A | grep icedove | ps -A | grep icedove | ||
</code> | </code> | ||
- | <code> | + | <file config retour de la commande> |
4245 pts/0 00:00:02 icedove | 4245 pts/0 00:00:02 icedove | ||
- | </code> | + | </file> |
>Ici ''4245'' est le PID du processus. | >Ici ''4245'' est le PID du processus. | ||
>Il ne sera pas le même si vous exécutez cette commande sur votre machine, ou d'une fois à l'autre. | >Il ne sera pas le même si vous exécutez cette commande sur votre machine, ou d'une fois à l'autre. | ||
Ligne 233: | Ligne 233: | ||
>Mieux prendre l'habitude de ne pas laisser une console ''tty'' sans surveillance après s'y être loguer, et cela d'autant plus pour le compte root -;) | >Mieux prendre l'habitude de ne pas laisser une console ''tty'' sans surveillance après s'y être loguer, et cela d'autant plus pour le compte root -;) | ||
- | * Revenir sur l'interface graphique : ''ctrl+Alt+F7'' | + | * Revenir sur l'interface graphique : <key>A-F7</key> |
Quelques exemples pour illustrée la notion de processus : | Quelques exemples pour illustrée la notion de processus : |