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
doc:programmation:shells:bash-les-differents-caracteres-speciaux [05/03/2023 21:58]
agp91 [Consoles et terminaux]
doc:programmation:shells:bash-les-differents-caracteres-speciaux [01/04/2023 19:17] (Version actuelle)
agp91 [Consoles et terminaux]
Ligne 14: Ligne 14:
 Page en court de réécriture Page en court de réécriture
 </​note>​ </​note>​
 +
 +  * **Vision d'​ensemble** ;-) 
 +  * [[doc:​programmation:​shells:​la-page-man-bash-les-caracteres-speciaux|Détail et caractères]]
 +  * [[atelier:​chantier:​bash:​les-operateurs-sur-parametres|Les opérateurs de test sur paramètres]]
 +  * [[doc:​programmation:​shells:​la-page-man-bash-ii-les-operateurs-lexicographiques|Les opérateurs de test sur chaînes]]
 +  * [[atelier:​chantier:​bash:​les-operateurs-de-test-sur-fichiers|Les opérateurs de test sur fichiers]]
 +  * [[doc:​programmation:​shells:​page-man-bash-iii-les-operateurs-de-comparaison-numerique|Les opérateurs de comparaison numérique]]
 +  * [[doc:​programmation:​shells:​page-man-bash-iv-symboles-dans-les-calculs-mathematiques|Les symboles dans les calculs]] ​
 +  * [[doc:​programmation:​shells:​page-man-bash-v-les-tableaux|Bash : les tableaux]] ​
 +  * [[doc:​programmation:​shells:​man-bash-vi-les-caracteres-de-transformation-de-parametres|Les caractères de transformation de parametres]]
 +  * [[doc:​programmation:​shells:​bash-vii-globs-etendus-regex|Bash : Variables, globs étendus, ERb, ERe]]
 ===== Introduction ===== ===== Introduction =====
  
Ligne 50: Ligne 61:
 Un **shell**, nommé aussi **interpréteur de commande**, est un logiciel en espace utilisateur qui permet d'​ordonner des actions au système d'​exploitation.\\ Un **shell**, nommé aussi **interpréteur de commande**, est un logiciel en espace utilisateur qui permet d'​ordonner des actions au système d'​exploitation.\\
  
-De **manière interactive**, le shell permet à l'​utilisateur de saisir, une ligne de commande au clavier, qui après interprétation,​ est exécutée.\\+De manière ​**interactif**, le shell permet à l'​utilisateur de saisir, une ligne de commande au clavier, qui après interprétation,​ est exécutée.\\
 Lorsque le shell exécute une commande, sans précision, ni action supplémentaire,​ le shell attend la fin de l'​exécution de la commande avant de redonner la main à l'​utilisateur. Lorsque le shell exécute une commande, sans précision, ni action supplémentaire,​ le shell attend la fin de l'​exécution de la commande avant de redonner la main à l'​utilisateur.
  
 Un shell est capable d'​exécuter par lot, un ensemble de commande. La main est alors rendu à l’utilisateur,​ après l'​exécution de la dernière commande du lot. Un lot de commande peut être écrit dans un fichier que nous nommons **script**. Un shell est capable d'​exécuter par lot, un ensemble de commande. La main est alors rendu à l’utilisateur,​ après l'​exécution de la dernière commande du lot. Un lot de commande peut être écrit dans un fichier que nous nommons **script**.
  
-Un shell, peut de **manière ​non-interactif** exécuter un script. Lorsque toutes les commandes contenues dans le script sont exécutées,​ le shell se termine, sans donner la main à l'​utilisateur.+Un shell, peut de manière ​**non-interactif** exécuter un script. Lorsque toutes les commandes contenues dans le script sont exécutées,​ le shell se termine, sans donner la main à l'​utilisateur.
  
 <​note>​ <​note>​
Ligne 65: Ligne 76:
 Que le shell soit exécuté de manière interactif ou pas, il permet : Que le shell soit exécuté de manière interactif ou pas, il permet :
  
-  * D’accéder aux systèmes ​de fichiers. ((Bonne maxime à retenir : Tout est fichier.)) +  * D’accéder aux **système ​de fichier**. ((Bonne maxime à retenir : **Tout est fichier**.)) 
-  * De fournir un environnement de travail, constitué de donnéesMémorisées, sous la forme d'un couple nom/valeur, nommé variable. L'​ensemble de ces variables sont nommées **variables de l'​interpréteur**. S'​ajoutent les paramètres positionnels ​(ou variable spéciales ​en csh) et autres ​paramètres spéciaux+  * De fournir un environnement de travail, constitué de donnéeMémorisée, sous la forme d'un couple nom/valeur, nommé variable. L'​ensemble de ces variables sont nommées **variables de l'​interpréteur**. S'​ajoutent les __paramètres positionnels__ ​(ou __variables spéciales__ ​en csh) et autres ​__paramètres spéciaux__
-  * De fournir un environnement,​ nommé **environnement**,​ constitué d'une sélection de variable, parmi __les variables ​de l'​interpréteur__. ​**L'​environnement** est un composant de __l'environnent ​d'​exécution__ ​qui est fourni aux __processus fils__ créés par le shell+  * De fournir un environnement,​ nommé **environnement**,​ constitué d'une sélection de variable, parmi les __variables ​de l'​interpréteur__. L'**environnement** est un composant de l'__environnent ​d'​exécution__. 
-  * De fournir un **environnement d'​exécution**,​ transmis aux __processus fils__ qui sont créés par le shell. +  * De fournir un **environnement d'​exécution**, ​qui rassemble les informations nommées __données d'un processus__,​ indispensables au fonctionnement des processus. L'​**environnement d’exécution** est transmis aux **processus fils**((Un **processus fils** est un processus créer par un autre processus, alors nommé **processus parent**.)) ​créés par le shell. 
-  * D'​exécuter des programmes dans des environnements,​ que nous nommons **processus**. Chaque ​programmes disposant ​de son propre **processus**. +  * D'​exécuter des programmes dans des environnements,​ que nous nommons **processus**. Chaque ​programme dispose ​de son propre **processus**. Le shell, ne peut créer que des **processus fils**, nommés aussi **sous-shell** (**subshell**)
-  * De suspendre, reprendre ou terminé ​(tué) l'​exécution d'un processus en lui envoyant un signal. +  * De **suspendre****reprendre** ou **terminer** ​(tuer) l'​exécution d'un processus en lui **envoyant un signal**
-  * De rediriger ​les **entrés/sorties standards** ​vers la console ​ou des fichiers. +  * De **rediriger** ​
-  * De connecter les sorties ​d'un processus avec l'entrée ​d'un autre processus. ​Tant que le premier processus n'​envoie rien vers ses sorties standards, l'​exécution du second processus est suspendu+    * L'​**entrée standard** depuis le clavier, la __sortie standard__ ou un fichier. 
-  * De passer un processus en arrière plan, ou de le remettre au premier plan.+    * Les **sorties standards**((Par défaut, les sorties standards sont deux : la **sortie standard** et la **sortie d'​erreur standard**.)) vers l'​écran ​ou des fichiers. 
 +  * De réaliser une **canalisation** (**pipeline**) entre deux processus. Les __sorties standards__ ​d'un processus ​sont connectées ​avec l'__entrée standard__ ​d'un autre processus. ​Quand le premier processus n'​envoie rien vers ses __sorties standards__, l'​exécution du second processus est suspendu.
   * De remplacer le programme exécuté dans un processus par un autre programme. ​   * De remplacer le programme exécuté dans un processus par un autre programme. ​
-  * De récupéré ​l'​état final d'une commande, nommé **code de retour**. +  ​* La **gestion des tâches**, en passant un processus en **arrière plan**, ou de le remettre au **premier plan**. 
-  * De réaliser ​des lots de commande.+  ​* De récupérer ​l'​état final d'une commande, nommé **code de retour**. 
 +  * De regrouper ​des commandes, nommé **lot de commande** ou **suite de commande**.
  
-Certains shells sont dit restreint. Ils restreignent pour des raisons de sécurité, certaines fonctionnalités. ​+Certains shells sont dit restreint. Ils restreignent pour des raisons de sécurité ​et d'​optimisation, certaines fonctionnalités. ​
  
 Exécuté de manière interactif, un shell offre des fonctionnalités supplémentaires : Exécuté de manière interactif, un shell offre des fonctionnalités supplémentaires :
Ligne 86: Ligne 99:
   * De redonner la main à l'​utilisateur,​ après l’exécution au premier plan, d'une commande ou d'un lot de commande.   * De redonner la main à l'​utilisateur,​ après l’exécution au premier plan, d'une commande ou d'un lot de commande.
   * Il offre un environnement de travail à l'​utilisateur :   * Il offre un environnement de travail à l'​utilisateur :
-    * Un prompt ou invite est affichée ​lorsque le shell rend la main à l'​utilisateur.+    * Un **prompt** (ou inviteest affiché ​lorsque le shell rend la main à l'​utilisateur.
     * Un outil d'​édition qui permet de naviguer dans la ligne en court de saisie.     * Un outil d'​édition qui permet de naviguer dans la ligne en court de saisie.
     * Certains shells dispose :     * Certains shells dispose :
-      * D'un historique des commandes déjà exécutées, pouvant ​être rappelé ​sur la ligne en court de saisie. +      * D'​un ​**historique** des commandes déjà exécutées. Ainsi une commande déjà utilisée peut-être rappelée ​sur la ligne en court de saisie. 
-      * D'une complétion des commandes, afin de faciliter la saisie des commandes.+      * D'​une ​**complétion** des commandes, afin de faciliter la saisie des commandes.
  
 Il existe de nombreux shells qui ont été développés au fil du temps.\\ Il existe de nombreux shells qui ont été développés au fil du temps.\\
-Bash est l'un des shells disponibles le plus rependu, installé par défaut sur de nombreux ​système ​dont Debian GNU/​Linux.\\+**Bash** est l'un des shells disponiblesle plus rependu, installé par défaut sur de nombreux ​systèmes, ​dont Debian GNU/​Linux.\\
 Le Bourn-again shell (bash) est une implémentation libre du Bourn shell (l'un des premiers shell UNIX).\\ Le Bourn-again shell (bash) est une implémentation libre du Bourn shell (l'un des premiers shell UNIX).\\
-Il a été développé ​pour la free software fondation, pour le projet GNU. afin d'​avoir ​une shell libre pour les UNIX libre.\\+Il a été développé ​par la **free software fondation**, pour le projet ​**GNU**. afin d'​avoir ​un shell libre pour les UNIX libre.
  
 __**Voir aussi :**__ __**Voir aussi :**__
  
 +  * [[https://​www.gnu.org/​savannah-checkouts/​gnu/​bash/​manual/​bash.html#​What-is-a-shell_003f|(gnu)(en) Bash Reference Manual : What is a shell ?]]
   * Historique des shells Unix et GNU/Linux   * Historique des shells Unix et GNU/Linux
     * [[https://​fr.wikipedia.org/​wiki/​Shell_Unix#​Historique_des_shells_Unix|(fr.wikipedia) Shell Unix : Historique des shell Unix]]     * [[https://​fr.wikipedia.org/​wiki/​Shell_Unix#​Historique_des_shells_Unix|(fr.wikipedia) Shell Unix : Historique des shell Unix]]
Ligne 104: Ligne 118:
   * Liste des shells   * Liste des shells
     * [[https://​fr.wikipedia.org/​wiki/​Shell_Unix#​Shells|(fr.wikipedia) Shell Unix : shell]]     * [[https://​fr.wikipedia.org/​wiki/​Shell_Unix#​Shells|(fr.wikipedia) Shell Unix : shell]]
-    * [[https://​packages.debian.org/​stable/​shells|(packages.debian)Paquets logiciels dans « bullseye », Sous-section shells]]+    * [[https://​packages.debian.org/​stable/​shells/|(packages.debian)Paquets logiciels dans « bullseye », Sous-section shells]]
  
 ===== Consoles et terminaux ===== ===== Consoles et terminaux =====
Ligne 113: Ligne 127:
  
   * **La console** qui désigne, les interfaces que nous obtenons par la combinaison des touche ''​Ctrl''​+''​Alt''​+''​F...''​   * **La console** qui désigne, les interfaces que nous obtenons par la combinaison des touche ''​Ctrl''​+''​Alt''​+''​F...''​
-  * **Le terminal** pour désigner, dans un environnent graphique, la fenêtre où nous obtenons une interface en mode.+  * **Le terminal** pour désigner, dans un environnent graphique, la fenêtre où nous obtenons une interface en mode texte.
  
 <​note>​ <​note>​
-Cela est simple et précis. ​Dans un premier temps... ​Mais lorsque nous souhaitons aller plus loin, c'est finalement réducteur et porte à confusion.\\+Cela est simple et précis.\\ 
 +Mais lorsque nous souhaitons aller plus loin, c'est finalement réducteur et porte à confusion.\\
 \\ \\
-Pour retrouver les définitions,​ voir : [[atelier:​chantier:​terminaux-et-consoles-definitions|Terminaux et consoles, ​définitions]].+Pour retrouver les définitions,​ voir : [[atelier:​chantier:​terminaux-et-consoles-explications|Terminaux et consoles, ​explications]].
 </​note>​ </​note>​
  
-Sur un système non graphique, nous disposons uniquement d'​interface console.+----
  
-Sur un système Debian GNU/Linux moderne, 6 consoles sont proposées.+__**Sur un système non graphique**__,​ nous disposons uniquement d'​interface en mode texte. 
 + 
 +Sur un système Debian GNU/Linux moderne, 6 consoles sont disponibles.
  
 Elles sont accessibles par l'​usage des touches ''​Ctrl''​+''​Alt''​+''​F1''​ à ''​F6''​. Elles sont accessibles par l'​usage des touches ''​Ctrl''​+''​Alt''​+''​F1''​ à ''​F6''​.
  
 Leur usage est sanctionné par la saisi au clavier d'**un login** (couple nom de  l'​utilisateur + mot de passe). Leur usage est sanctionné par la saisi au clavier d'**un login** (couple nom de  l'​utilisateur + mot de passe).
- 
-Lors de la saisie du mot de passe, aucun caractère n'est affiché. Cela est normal, ainsi personne ne peut lire le mot de passe durant sa saisie. 
- 
-Lorsque que le système est démarré, nous nous trouvons sur la première console. Elle est affichée à l'​écran. Notre login est demandé. 
  
 <​code>​ <​code>​
Ligne 139: Ligne 152:
 </​code>​ </​code>​
  
-Sur un système graphiquelorsque qu'il est démarré, nous nous trouvons directement sur une 7em console (pour les système Debian GNU/Linux moderne).+<​note>​ 
 +Lors de la saisie du mot de passeaucun caractère n'​est ​affiché.\\ 
 +-> Ainsi personne ne peut lire le mot de passe durant sa saisie. 
 +</​note>​
  
-Un login graphique nommé **gestionnaire de session graphique** ou **gestionnaire d'​affichage** (**X display manager**) est affiché.+----
  
-Pour continuernous devons renseigner notre nom d'utilisateurpuis notre mot de passe.+__**Sur un système graphique**__lorsque qu'il est démarré,\\ 
 +Nous nous trouvons directement sur une 7em console (pour les système Debian GNU/Linux moderne).
  
 +Un login graphique nommé **gestionnaire de session graphique** ou **gestionnaire d'​affichage** (**X display manager**) est affiché.
 +
 +Pour continuer, nous devons renseigner notre nom d'​utilisateur,​ puis notre mot de passe.\\
 Une fois connecté, le bureau est affiché à l'​écran. Une fois connecté, le bureau est affiché à l'​écran.
  
-Pour disposer d'une interface en mode texte (et accéder à un shell interactif),​ nous devons exécuter une application nommée un **terminal ​graphique** ou **émulateur de terminal**, plus communément **terminal**.+Pour disposer d'une interface en mode texte (et accéder à un shell interactif),​ nous devons exécuter une application nommée un **terminal ​fenêtre** ou **émulateur de terminal ​pour X**, plus communément **terminal**.
  
 Le shell est directement disponible, aucun login n'est demandé. Par défaut, nous sommes connectés avec notre nom d'​utilisateur. Le shell est directement disponible, aucun login n'est demandé. Par défaut, nous sommes connectés avec notre nom d'​utilisateur.
- +<​note>​ 
-Nous pouvons, quand nous le souhaitons, changer d’utilisateur avec la commande **su //user//**. Le mot de passe de l'​utilisateur (**//​user//​**) nous est alors demandé. +Nous pouvons, quand nous le souhaitons, changer d’utilisateur avec la commande **su**.
- +
-Quand nous naviguons entre les différentes consoles, pour revenir sur l'​interface graphique, la combinaison ''​Ctrl''​+''​Alt''​+''​F7''​ doit être utilisée. +
- +
-<​note>​Sur le wiki de Debian, nous pouvons lire :\\ +
-\\ +
-[[https://​wiki.debian.org/​Console]] +
-<​file>"​Console"​ is also commonly used to designate terminal emulators (which emulate behavior of the console), or generally any kind of command line interface.</​file>​ +
-Traduction : +
-<​file>"​Console"​ est également couramment utilisé pour désigner les émulateurs de terminaux (qui émulent le comportement de la console), ou généralement tout type d'​interface de ligne de commande.</​file>​ +
-\\ +
-Ainsi un shell exécuté dans une console ou un terminal graphique, peut être nommé console.+
 </​note>​ </​note>​
 +<​note>​
 +Quand nous naviguons entre les différentes consoles, pour revenir sur l'​interface graphique,​\\
 +La combinaison ''​Ctrl''​+''​Alt''​+''​F7''​ (ou la commande **chvt 7**) doit être utilisée.
 +</​note>​
 +
 +----
  
 __**Voir aussi** :__ __**Voir aussi** :__
doc/programmation/shells/bash-les-differents-caracteres-speciaux.1678049925.txt.gz · Dernière modification: 05/03/2023 21:58 par agp91

Pied de page des forums

Propulsé par FluxBB