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 [15/09/2010 07:12] smolski |
doc:programmation:bash [09/11/2010 11:55] smolski |
||
---|---|---|---|
Ligne 17: | Ligne 17: | ||
\\ | \\ | ||
- | Objet : Les lignes de commande (bash)\\ | + | Objet : Le shell bas\\ |
Niveau requis : DEBUTANT\\ | Niveau requis : DEBUTANT\\ | ||
- | Commentaires : | + | Commentaires : //Instructions en mode texte utilisant l'interface en// [[manuel:ldc | ligne de commande]]. |
- | *Instructions en mode texte utilisant l'interface en ligne de [[manuel:commande|commande]]. | + | |
- | *Le bash, les scripts pas à pas… | + | |
- | + | ||
===== Le Shell ===== | ===== Le Shell ===== | ||
- | Le Shell est un interpréteur (ou interface) de lignes de [[manuel:commande|commandes]], 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 [[manuel: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é. | ||
- | Pour savoir quel shell vous utilisez, tapez : | + | Pour savoir quel shell vous utilisez par défaut, tapez : |
<code bash> | <code bash> | ||
user@debian-facile:~$ echo $SHELL | user@debian-facile:~$ echo $SHELL | ||
Ligne 43: | Ligne 39: | ||
</code> | </code> | ||
- | ===== Ligne de commmande ===== | + | ===== Les commandes Linux ===== |
- | Vous avez déjà sûrement utilisé des commandes à partir des définitions présentes à la page [[manuel:commande|Les commandes Linux]]\\ | + | * [[manuel:commande | Les commandes Linux]] |
- | ==== Exemples : ==== | + | ===== Répertoires et chemins ===== |
- | Utilisons [[commande:ls | la commande ls]] | + | * [[manuel:repertoire | Les répertoires et chemins]] |
- | Sans option, tapez : | + | ===== Ligne de commmande ===== |
- | <code bash> | + | |
- | user@debian-facile:~$ ls | + | |
- | 2010-02-26--10.13.22 fstab phpmyadmin.png | + | |
- | caisse_060810.ods gparted1.png resilier-sfr | + | |
- | </code> | + | |
- | Une commande peut être suivie d'un paramètre ou non, avec des options éventuelles. | + | Vous avez déjà sûrement utilisé des commandes à partir des définitions présentes à la page [[manuel:commande|Les commandes Linux]]\\ |
- | Avec une seule option ''(-l)'', tapez : | + | Voir : |
- | <code bash> | + | * [[manuel:ldc | La ligne de commande]] |
- | user@debian-facile:~$ ls -l | + | |
- | total 16308 | + | |
- | -rw-r--r-- 1 mattux users 85680 fév 19 18:45 1024x7683.jpg | + | |
- | drwx------ 2 mattux users 4096 fév 19 20:25 amsn_received | + | |
- | drwxr-xr-x 2 mattux users 4096 fév 16 15:13 bin | + | |
- | -rw-r--r-- 1 mattux users 603999 fév 19 22:13 capture1.png | + | |
- | drwx------ 2 mattux users 4096 fév 20 02:56 Desktop | + | |
- | drwx------ 2 mattux users 4096 fév 16 15:13 Documents</code> | + | |
- | + | ||
- | Avec des options combinées ''(-lh)'', tapez : | + | |
- | <code bash> | + | |
- | user@debian-facile:~$ ls -lh | + | |
- | total 16308 | + | |
- | -rw-r--r-- 1 mattux users 85,6 fév 19 18:45 1024x7683.jpg | + | |
- | drwx------ 2 mattux users 4,0 fév 19 20:25 amsn_received | + | |
- | drwxr-xr-x 2 mattux users 4,0 fév 16 15:13 bin | + | |
- | -rw-r--r-- 1 mattux users 603,9 fév 19 22:13 capture1.png | + | |
- | drwx------ 2 mattux users 4,0 fév 20 02:56 Desktop | + | |
- | drwx------ 2 mattux users 4,0 fév 16 15:13 Documents</code> | + | |
===== Métacaractères ===== | ===== Métacaractères ===== | ||
- | Plusieurs combinaisons de commandes dans une seule ligne de commande : [[commande:les_metacaracteres|Les Métacaractères]] | + | Débutant avisé, voir : |
+ | * [[commande:les_metacaracteres|Les métacaractères, ou globs, ou encore patterns]] | ||
+ | | ||
- | Exemple : | ||
- | |||
- | Utilisons [[commande:find | la commande find]] combinée avec la [[commande:wc | la commande wc]] : | ||
- | <code bash> | ||
- | user@debian-facile:~$ find developpement/django/certif -name '*.py' -exec wc -l {} \+ | ||
- | 1 developpement/django/certif/__init__.py | ||
- | 0 developpement/django/certif/acronym/__init__.py | ||
- | 48 developpement/django/certif/acronym/models.py | ||
- | 82 developpement/django/certif/acronym/tools.py | ||
- | 13 developpement/django/certif/acronym/urls.py | ||
- | 42 developpement/django/certif/acronym/views.py | ||
- | .../...</code> | ||
- | | ||
===== 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 [[commande: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é : [[commande:alias|un alias]]. |
Pour voir où et comment réaliser un tel script : | Pour voir où et comment réaliser un tel script : | ||
Ligne 110: | Ligne 71: | ||
Un **script** est la rédaction dans un fichier texte d'un ensemble de //commandes// et d'expressions régulières (caractères utilisés symboliquement) orientant les instructions données aux commandes. | Un **script** est la rédaction dans un fichier texte d'un ensemble de //commandes// et d'expressions régulières (caractères utilisés symboliquement) orientant les instructions données aux commandes. | ||
- | Pour les DÉBUTANTS AVISÉS, voir là : | + | Pour les DÉBUTANTS AVISÉS et anglophile, voir là : |
* [[scripts_bash | Des scripts à foison commentés en anglais]] | * [[scripts_bash | Des scripts à foison commentés en anglais]] | ||
+ | |||
+ | |||
+ | ===== Liens et remerciements ===== | ||
+ | |||
+ | //Merci à //**devpsp**// d'avoir initié cette page, et au //**captnfab**// qui de son site ici :// | ||
+ | * http://wiki.chezlefab.net/about/accueil | ||
+ | |||
+ | //Veille à nous éviter bien des ecueils !// ;-) |