logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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 [12/09/2010 16:49]
127.0.0.1 édition externe
doc:programmation:bash [08/11/2010 16:56]
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é.
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]]+==== TP01 - Répertoires et chemins par l'​exemple. ====
  
-Sans option, tapez :+ 
 +==== Préparation du terrain ==== 
 + 
 +Placez-vous dans un nouveau dossier créé pour l'​occasion. Exemple ​:
 <code bash> <code bash>
- ​user@debian-facile:​~ls +cd 
-2010-02-26--10.13.22 ​          ​fstab ​            ​phpmyadmin.png +~$ mkdir -p tmp/​df_tp01/​ 
-caisse_060810.ods ​             gparted1.png ​     resilier-sfr+~$ cd tmp/​df_tp01/​ 
 +~/​tmp/​df_tp01$
 </​code>​ </​code>​
  
-Une commande peut être suivie d'un paramètre ou non, avec des options éventuelles.+On va maintenant créer les fichiers et dossiers qui nous servirons pour la 
 +suite.
  
-Avec une seule option ''​(-l)'',​ tapez :+Voici pour la première partie //révision de bash// ​:
 <code bash> <code bash>
- ​user@debian-facile:​~$ ls -l +~/​tmp/​df_tp01touch phaute_dorthografe 
-total 16308 +~/​tmp/​df_tp01$ touch notes_temporaires 
--rw-r--r-- 1 mattux users    85680 fév 19 18:45 1024x7683.jpg +~/​tmp/​df_tp01$ touch quisuisje 
-drwx------ 2 mattux users     4096 fév 19 20:25 amsn_received +~/​tmp/​df_tp01$ 
-drwxr-xr-x 2 mattux users     4096 fév 16 15:13 bin +</​code>​
--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 :+==== Le répertoire courant, ou répertoire de travail ==== 
 + 
 +C'est ce qui est indiqué juste à gauche du ''​$'' du prompt ''​bash''​.
 <code bash> <code bash>
- ​user@debian-facile:​~$ ls -lh +~/​tmp/​df_tp01$</​code>​
-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 =====+Vous pouvez l'​afficher en tapant la commande ''​pwd''​ : 
 +<code bash> 
 +~/​tmp/​df_tp01$ pwd 
 +/​home/​captnfab/​tmp/​df_tp01 
 +</​code>​
  
-Plusieurs combinaisons ​de commandes dans une seule ligne de commande : [[commande:les_metacaracteres|Les Métacaractères]]+On change ​de répertoire ​de travail avec [[commande:cd la commande CD]].
  
-Exemple :+Le répertoire de travail est également stocké dans la variable ''​$PWD''​ du shell. 
 +<code bash> 
 +~/​tmp/​df_tp01$ echo $PWD 
 +/​home/​captnfab/​tmp/​df_tp01 
 +</​code>​
  
-Utilisons [[commande:find | la commande find]] combinée avec la [[commande:wc | la commande ​wc]] :+==== Chemin relatif / chemin absolu ==== 
 + 
 +Pour identifier de manière unique un fichier sur un ordinateur sous Linux, on 
 +donne ce qu'on appelle un chemin vers le fichier. Ce chemin peut être : 
 +  * //​absolu//​ 
 +  * ou //​relatif//​. 
 + 
 +=== Quelques chemins particuliers === 
 + 
 +  * ''​..''​ (deux points) désigne le répertoire parent d'un répertoire considéré 
 +  * ''​.''​ (un point) désigne le répertoire considéré 
 + 
 +Exemples :  
 +  * ''/​home/​../​var''​ est un chemin pour le répertoire ''/​var''​ 
 +  * ''​ls .''​ liste le répertoire courant 
 +  * ''​../​./​./​./​.''​ est un chemin vers le dossier parent, équivalent à ''​..''​ 
 + 
 +=== Chemin absolu === 
 + 
 +Un **chemin absolu** est un chemin depuis ​la racine du système de fichier, ''/''​ 
 + 
 +Exemples de chemin //​absolu// ​ 
 +  * ''/​var/​cache/​apt/​archives/''​ qui est le dossier contenant les paquets téléchargés pour installation ou mise à jour par ''​aptitude'',​ ou ''​apt-get'',​ ou ''​synaptic''​ etc. 
 +  * ''/​home/​../​var''​ est aussi un chemin absolu puisqu'​il donne le chemin depuis ''/''​ 
 + 
 +=== Chemin relatif === 
 + 
 +Un **chemin relatif** est un chemin depuis le **répertoire de travail** : ''​$PWD''​ 
 + 
 +Exemple de chemin //relatif// :  
 +  * ''​../​../''​ est un chemin relatif vers le dossier parent du dossier parent. 
 +Si vous êtes toujours dans ''​~/​tmp/​df_tp01/'', ​la commande
 <code bash> <code bash>
-user@debian-facile:​~$ find developpement/django/​certif -name '*.py' -exec wc -l {} \+ +ls ../.. 
-     1 developpement/django/​certif/​__init__.py +</code> 
-     0 developpement/django/certif/acronym/__init__.py +doit vous lister votre //home//. 
-    48 developpement/​django/​certif/acronym/models.py +  * ''​./plouf/../tchac/''​ est un chemin relatif vers le dossier ''​$PWD/tchac''​ 
-    82 developpement/django/certif/acronym/tools.py + 
-    13 developpement/​django/​certif/​acronym/​urls.py +<note important>''​Attention !''​ : Virtuellement,​ un chemin relatif commence **toujours** par :''​./''​\\ 
-    42 developpement/django/certif/​acronym/​views.py +Cependant, en règle générale, on peut l'​omettre.</note> 
-    .../...</​code>​ + 
-    +Exemple 
 +<code bash> 
 +ls -lh quisuisje 
 +</code> 
 + 
 +Signifie en fait : 
 +<code bash> 
 +ls -lh ./quisuisje 
 +</​code>​ 
 + 
 + 
 + 
 + 
 + 
 +===== Ligne de commmande ===== 
 + 
 +Vous avez déjà sûrement utilisé des commandes à partir des définitions présentes à la page [[manuel:​commande|Les commandes Linux]]\\  
 + 
 +Voir : 
 +  * [[manuel:​ldc | La ligne de commande]] 
 + 
 +===== Métacaractères ===== 
 + 
 +Voir : 
 +  * [[commande:​les_metacaracteres|Les Métacaractères]] 
 +   
 ===== Alias ===== ===== Alias =====
  
Ligne 104: Ligne 162:
  
 Pour voir où et comment réaliser un tel script : Pour voir où et comment réaliser un tel script :
-  * [[bash:alias|Réalisation d'un Script contenant des Alias]] ​+  * [[bash:alias2|Réalisation d'un Script contenant des Alias]] ​
  
 ===== Script ===== ===== Script =====
  
-Un **script** est la rédaction dans un fichier texte d'un ensemble de //​commandes//​ et d'//+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à : 
 + 
 +  * [[scripts_bash | Des scripts à foison commentés en anglais]]
doc/programmation/bash.txt · Dernière modification: 07/04/2016 11:03 par wlourf

Pied de page des forums

Propulsé par FluxBB