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
terminal [Le 22/02/2016, 18:33]
78.205.188.134 [Qu'est-ce qu'une commande ?]
terminal [Le 24/03/2024, 19:32] (Version actuelle)
201.171.175.88 [Personnaliser son terminal]
Ligne 2: Ligne 2:
  
 ---- ----
- 
-sudo /​usr/​lib/​flashplugin-installer/​install_plugin $(pwd)/​adobe-flashplugin_20160209.orig.tar.gz 
-====== Le terminal GNU/Linux ====== 
- 
-Le terminal est un programme qui ouvre une [[console]] dans une interface graphique, il permet de lancer des **[[commande_shell|commandes]]**. 
- 
-{{ ::​terminal.png?​​direct&​​400 |Un terminal lancé sous Ubuntu 15.10}} 
-cousin@cousin-HP-Pavilion-dv7-Notebook-PC:​~S 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
  
  
Ligne 31: Ligne 8:
 ===== Pourquoi le terminal ? ===== ===== Pourquoi le terminal ? =====
  
-Il est parfois plus simple de **taper une commande** que d'​effectuer des manipulations demandant beaucoup de clics de souris dans une interface graphique. C'est aussi un moyen plus simple pour expliquer comment faire quelque chose à quelqu'​un (sur un forum par exemple), ​puisque ​il suffit d'​indiquer la commande et non la suite de clics à effectuer sur l'​interface graphique.+Il est parfois plus simple de **taper une commande** que d'​effectuer des manipulations demandant beaucoup de clics de souris dans une interface graphique. C'est aussi un moyen plus simple pour expliquer comment faire quelque chose à quelqu'​un (sur un forum par exemple), ​puisqu'​il suffit d'​indiquer la commande et non la suite de clics à effectuer sur l'​interface graphique.
  
 Cependant, même si le terminal peut être beaucoup plus efficace qu'une interface graphique sous les doigts d'un utilisateur avancé, il est moins abordable que les interfaces graphiques. Cependant, même si le terminal peut être beaucoup plus efficace qu'une interface graphique sous les doigts d'un utilisateur avancé, il est moins abordable que les interfaces graphiques.
Ligne 38: Ligne 15:
  
 ===== Comment ouvrir un terminal ?===== ===== Comment ouvrir un terminal ?=====
-De manière générique,​ on ouvre le terminal avec la commande **x-terminal-emulator** (cette commande n'est qu'un lien sur votre terminal par défaut grace à **update-alternatives**) 
  
-Sinon, le tableau suivant donne les différentes méthodes qui permettent d'​ouvrir le terminal:+Le terminal utilisé par défaut dépend de l'​environnement, le tableau suivant donne les différentes méthodes qui permettent d'​ouvrir le terminal :
  
-Variante ​Menu ^ Accès ​rapide ​^ Raccourci clavier ^ +Environnement ou variante ​commande de l'​émulateur de terminal par défaut ​^ Accès ​graphique ​^ Raccourci clavier ^ 
-^ [[:Ubuntu]] | __Avec [[:​Unity]]:​__ depuis le [[unity#​tableau_de_bord_dash|Tableau de bord]] saisir ​**terminal** ​\\ __Avec [[:​Gnome-Panel]]:​__ ​//​Applications ​→ Accessoires → Terminal// | <​Alt><​F2et tapez **gnome-terminal** | <​CTRL><​Alt><​T>​ | +^ [[:​Ubuntu ​Gnome]] | **gnome-terminal** ​Rechercher ​**terminal**, ou bien //Activités -> Applications ​-> Utilitaires -> Terminal// | <​CTRL>​<​Alt><​T
-^ [[:Edubuntu]] | ::: ::: ::: +^ [[:​Ubuntu|Ubuntu (Unity)]] | **gnome-terminal** | Rechercher **terminal** | <​CTRL><​Alt><​T>​ | 
-^ [[:Lubuntu]] | //Menu -> Accessoires -> lxterminal// | <​CTRL><​Alt><​T>​ | +^ [[:Kubuntu]] | **konsole** ​//Menu → Applications → Système → Konsole//, ou bien //Menu →// Rechercher "​Konsole" ​Pas de raccourci par défaut ​
-^ [[:Kubuntu]] | //K → Applications → Système → Konsole// | <​Alt><​F2>​ et tapez **konsole** | FIXME Raccourci clavier par défaut ?| +Ubuntu ​[[:Mate]] | **mate-terminal** ​| //Applications → Système → Terminal// | <​CTRL><​Alt><​T>​ | 
-[[:Xubuntu]] | //​Applications → Accessoires → Émulateur de Terminal// ​| <​Alt><​F2>​ et tapez **xfterm4** (ou en fonction de la version **xfce4-terminal**) ​| <​Super>​((touche généralement représentée par le logo Windows)) <T> | +^ [[:Xubuntu]] | **[[:xfce4-terminal]]** | //​Applications → Accessoires → Émulateur de Terminal// | <​Super>​((touche généralement représentée par le logo Windows)) ​<T> ou bien <​CTRL><​Alt>​<T> | 
-^ [[:Cinnamon]] | Menu → Administration → Terminal ​| <​Alt><​F2et taper **gnome-terminal** | <​CTRL><​Alt><​T>​ | +^ [[:Lubuntu]] | **lxterminal** | //Menu -> Accessoires -> LXterminal// ​<​CTRL>​<​Alt><​T
-===== Passer ​votre commande ! =====+^ Ubuntu [[:​Budgie|Budgie]] | **[[tilix]]** (anciennement terminix) | //Menu -> Système -> Tilix//, ou bien //Menu ->// Rechercher "​terminal" ​| <​CTRL><​Alt><​T>​ | 
 + 
 +Beaucoup de bureaux permettent de **lancer directement des commandes** via une fenêtre qui s'​ouvre en faisant **<​ALT><​F2>​**. Vous pouvez donc lancer le terminal ainsi en y tapant son nom. L'​émulateur par défaut peut se lancer soit par sa commande propre (gnome-terminal,​ mate-terminal,​ ...), soit par la commande **x-terminal-emulator**,​ qui est un "​raccourci"​ vers la commande du terminal par défaut. 
 + 
 +===== Passez ​votre commande ! =====
  
 L'​utilisation est assez simple, tapez une commande (ou copiez-collez la) et faites //Entrée// (clavier) pour l'​exécuter. L'​utilisation est assez simple, tapez une commande (ou copiez-collez la) et faites //Entrée// (clavier) pour l'​exécuter.
  
-Les raccourcis pour le copier-coller ne sont pas Crtl+C ↔ Ctrl+V par défaut, mais **Maj+Ctrl+C** et **Maj+Ctrl+V**. En effet, dans un terminal le raccourci **Ctrl+C** ​annule ​la commande en cours. Cependant il est possible de modifier les raccourcis du Terminal (voir en bas de page la rubrique [[#​personnaliser son terminal]]) mais c'est une opération qui présente des risques de conflits entre les raccourcis ​"de la console" ​et les raccourcis ​"du terminal"​+Les raccourcis pour le copier-coller ne sont pas Ctrl+C ↔ Ctrl+V par défaut, mais **Maj+Ctrl+C** et **Maj+Ctrl+V**. En effet, dans un terminal le raccourci **Ctrl+C** ​sert à interrompre ​la commande en cours. Cependant il est possible de modifier les raccourcis du Terminal (voir en bas de page la rubrique [[#​personnaliser son terminal]]) mais c'est une opération qui présente des risques de conflits entre les raccourcis ​du terminal ​et les raccourcis du [[:shell]] (l'​interpréteur de commandes). 
 <note tip>​**[[wpfr>​Complètement|Complétion automatique]]**\\ <note tip>​**[[wpfr>​Complètement|Complétion automatique]]**\\
-Après avoir tapé 2 ou 3 caractères,​ il est possible d'​appuyer sur la touche //tab// qui permet de compléter la suite de la commande, du nom du dossier ou fichier. Cela évite les erreurs de frappe et est très appréciable pour éviter de saisir le nom de fichier parfois long et complexe comme le nom de certains paquets. Peut-être utilisé plusieurs fois si plusieurs noms ont une partie commune. \\+Après avoir tapé 2 ou 3 caractères,​ il est possible d'​appuyer sur la touche //​tab// ​(au-dessus de "​verrouillage majuscule"​) ​qui permet de compléter la suite de la commande, du nom du dossier ou fichier. Cela évite les erreurs de frappe et est très appréciable pour éviter de saisir le nom de fichier parfois long et complexe comme le nom de certains paquets. Peut-être utilisé plusieurs fois si plusieurs noms ont une partie commune. \\
 :!: Attention, [[wpfr>​Sensibilité_à_la_casse|c'​est sensible à la casse majuscules/​minuscules des caractères]] ! </​note>​ :!: Attention, [[wpfr>​Sensibilité_à_la_casse|c'​est sensible à la casse majuscules/​minuscules des caractères]] ! </​note>​
-https://dl.google.com/linux/​direct/​google-chrome-stable_current_amd64.deb===== Qu'​est-ce qu'une commande ? ===== + 
-https://​dl.google.com/​linux/​direct/​google-chrome-stable_current_amd64.deb+<note help>​**Cas particulier de Pantheon**\\ 
 +Dans le cas de l'​environnement Pantheon (qu'on retrouve par défaut sous elementary OS), les combinaisons par défaut sont **Ctrl+C** pour copier et **Ctrl+V** pour coller dans le Terminal</note> 
 +===== Qu'​est-ce qu'une commande ? ===== 
 Une commande est une ligne de texte, sur la documentation elle apparaît souvent comme ça : Une commande est une ligne de texte, sur la documentation elle apparaît souvent comme ça :
- +<​code>​ 
-  ma commande+ma commande 
 +</​code>​
  
 Parfois, il y en a plusieurs de suite, comme ça : Parfois, il y en a plusieurs de suite, comme ça :
 +<​code>​
 +cd Téléchargements
 +mkdir Nouveau\ Dossier
 +cd Nouveau\ Dossier
 +</​code>​
  
-  sudo apt-get update ​ +<note important>​Attention lorsque vous copiez collez bêtement des commandes dans un terminal elles risquent d'​être immédiatement exécutées sans que vous n'ayez pressé "​Entrée"​.\\ 
-  sudo apt-get upgrade  +C'est parce que le caractère "​Entrée"​ est inclus si vous sélectionnez plusieurs lignes d'un coup (faites l'​essai avec les 2 premières du code ci-dessus ;-)). C'est pratique mais parfois dangereux ! </​note>​
-  sudo apt-get install vlc-plugin-pulse mozilla-plugin-vlc libavcodec-extra-52+
  
-Quand il y a plusieurs commandes de suite il faudra copier-coller ​les lignes une par une, et faire Entrée entre chaque dans le terminal(copier-coller commande 1Entrée, copier-coller commande 2, Entrée, etc.)+Le nom d'un programme est une commande comme les autresPar exemple pour ouvrir [[:​Firefox]]vous pouvez taper :
  
-Une commande est pour ainsi dire un programme comme les autres. Par exemple pour ouvrir Firefox, vous pouvez taper : +<​code>​ 
- +firefox 
-  ​firefox+</​code>​
   ​   ​
 dans un terminal. dans un terminal.
 +
 +Vous pouvez même ouvrir un terminal dans un terminal, après tout pourquoi pas.
  
 ===== Compléter une commande ===== ===== Compléter une commande =====
  
 Parfois sur un forum, ou dans une documentation,​ vous trouverez des commandes de ce genre : Parfois sur un forum, ou dans une documentation,​ vous trouverez des commandes de ce genre :
 +<​code>​mv "le fichier à déplacer"​ "le dossier où le déplacer"</​code>​
 +<​code>​stella /​vers/​une/​rom</​code>​
 +<​code>​gedit 'mon fichier.conf'</​code>​
  
-  mv "le fichier à déplacer"​ "le dossier où le déplacer"​ +De telles commandes sont des exemples types, et ne sont pas à recopier ​telles quelles, mais doivent être adaptées à votre cas.
- +
-  stella /​vers/​une/​rom +
- +
-  gedit 'mon fichier.conf'​ +
- +
-De telles commandes sont des exemples types, et ne sont pas à recopier ​tel quel, mais doivent être adaptées à votre cas.+
  
 Dans un cas similaire au premier exemple : //mv "le fichier à déplacer"​ "le dossier où le déplacer"//,​ il suffit de taper le début de la commande : //mv//, puis //espace//, puis de faire un //​glisser-déposer du fichier// de votre gestionnaire de fichier jusqu'​au terminal, puis //espace//, un second //​glisser-déposer//,​ puis //entrer// pour exécuter la commande. Dans un cas similaire au premier exemple : //mv "le fichier à déplacer"​ "le dossier où le déplacer"//,​ il suffit de taper le début de la commande : //mv//, puis //espace//, puis de faire un //​glisser-déposer du fichier// de votre gestionnaire de fichier jusqu'​au terminal, puis //espace//, un second //​glisser-déposer//,​ puis //entrer// pour exécuter la commande.
  
 Parfois ce ne sera pas un dossier ni un fichier qui vous sera demandé, dans ce cas, il vous sera sûrement expliqué comment connaître ce qu'il faut y mettre entre des guillemets, par exemple : Parfois ce ne sera pas un dossier ni un fichier qui vous sera demandé, dans ce cas, il vous sera sûrement expliqué comment connaître ce qu'il faut y mettre entre des guillemets, par exemple :
 +<​code>​
 +sudo adduser votre_pseudo vboxusers
 +</​code>​
  
-  sudo adduser "votre pseudo" vboxusers+Ici il faut juste mettre ​votre pseudo ​à la place de **votre_pseudo**.
  
-Ici il faut juste mettre votre pseudo à la place de **"​votre pseudo"​**. 
  
-===== Ma commande ​me demande mon mot de passe =====+===== Les commandes ​me demandent des choses... ​=====
  
-"Je tape une commande, et je me retrouve face à quelque chose comme ceci:"+==== Le mot de passe ====
  
-  ​[sudo] password for Michel: +"Je tape une commande, et je me retrouve face à quelque chose comme ceci:"​ 
-   +<code bash> 
-Après ceci vous devez taper votre mot de passe, ceci est tout à fait normal pour les commandes commençant par "sudo" ​comme: +[sudo] password for Michel: 
- +</​code>​ 
-  sudo apt-get ​autoremove+  
 +Après ceci vous devez taper votre mot de passe, ceci est tout à fait normal pour les commandes commençant par ``sudo`` comme: 
 +<code bash> 
 +sudo apt-get ​update 
 +</​code>​
   ​   ​
 "Mais voilà, mon mot de passe ne se tape pas !" "Mais voilà, mon mot de passe ne se tape pas !"
  
-Tout à fait normal ​mon cher Michel, en fait le mot de passe est bel et bien tapé, mais vous ne le voyez pas, il suffit ​donc de taper son mot de passe, faire entrer ​et tout se déroulera comme prévu. Il s'agit d'une mesure de sécurité pour que les personnes regardant l'​écran ne puissent pas deviner le nombre de caractères que contient le mot de passe.+Tout à fait normal, en fait le mot de passe est bel et bien tapé, mais vous ne le voyez pas ! Il suffit de taperson ​mot de passe, faire "​entrée", ​et tout se déroulera comme prévu. Il s'agit d'une mesure de sécurité pour que les personnes regardant l'​écran ne puissent pas deviner le nombre de caractères que contient le mot de passe.
  
-<​note ​important>Si vous devez saisir un chiffre, il est possible qu'il faille ​le saisir différemment, par exemple en utilisant les chiffres au dessus des lettres "a...p" avec SHIFT+Chiffre.( Pas le pavé numérique ) </​note>​+<​note>​**[[:​sudo]]** ​est une commande de type "​admistrateur système"​. ​ Elle permet à tout utilisateur — pourvu que lui-même ait configuré son système afin d'obtenir les privilèges administrateur ou bien que son responsable réseau les lui ait accordé en modifiant son profil — de passer des commandes de bas niveau capables de modifier gravement la configuration même, donc influer sur le comportement de la machine. En accordant à un programme ou à une série de commandes des privilèges administrateur,​ ces commandes deviennent des commandes système capables, par exemple, de :  
 +  * installer un programme,​ 
 +  * enlever un programme,​ 
 +  * modifier un fichier texte de configuration,​ etc). \\ 
 +**[[:​sudo]]** __vous demandera__ donc __votre mot de passe administrateur__ pour s'​assurer d'​être bien en face d'une personne ayant l'​autorisation de pratiquer ce genre de tâches.</​note>​
  
-Un peu plus sérieusement,​ **[[sudo]]** est une commande pouvant se mettre devant n'importe quelle autre commande. Son utilité est de donner ​à un autre programme ​l'autorisation ​de toucher au système. ​(installer un programme, enlever un programme, modifier un fichier texte de configuration,​ etc). \\ +<note warning>​Si vous êtes le seul responsable de votre machine — bien qu'​ayant paramétré d'autres profils "​invité"​ — votre profil configuré ​à l'installation ​de votre système ​vous a octroyé les droits administrateurIl vous suffit ​donc d'entrer la commande préfixe SUDO (Super User DO) pour élever vos privilèges au rang d'administrateur système.
-sudo vous demandera ​donc votre mot de passe pour s'​assurer ​d'être bien en face d'une personne ayant l'​autorisation de pratiquer ce genre de tâches.+
  
 +Attention à ne pas utiliser **sudo** pour n'​importe quoi, les conséquences pourraient être désastreuses.</​note>​
  
-===== Quand les commandes me posent des questions... ===== +==== Les questions ====
 Parfois une commande peut vous demander quelque chose, la réponse à donner est souvent très simple, voici quelques exemples : Parfois une commande peut vous demander quelque chose, la réponse à donner est souvent très simple, voici quelques exemples :
  
   * À un moment, une commande stoppe et vous demande ça :   * À un moment, une commande stoppe et vous demande ça :
- +<​code>​ 
-  Souhaitez-vous continuer [O/n] ?+Souhaitez-vous continuer [O/n] ? 
 +</​code>​
  
 alors là c'est simple, **[O/n]** veut dire que vous pouvez répondre **o** ou **n** à la question, pour répondre **Oui** ou **Non** alors là c'est simple, **[O/n]** veut dire que vous pouvez répondre **o** ou **n** à la question, pour répondre **Oui** ou **Non**
Ligne 129: Ligne 127:
 __Pourquoi "​**O**"​ est en majuscule ?__ __Pourquoi "​**O**"​ est en majuscule ?__
  
-Simplement parce que c'est le choix par défaut, ce qui veut dire que si vous ne tapez rien, et que vous faites « Entrée », il comprendra **O**. ​+Simplement parce que c'est le choix par défaut, ce qui veut dire que si vous ne tapez rien, et que vous faites « Entrée », il comprendra **O**.
  
 Si ça avait été **[o/N]** à la place, si vous aviez fait entrer directement sans taper **o** la commande aurait stoppé, il a donc pris en compte la réponse par défaut, **N**. Si ça avait été **[o/N]** à la place, si vous aviez fait entrer directement sans taper **o** la commande aurait stoppé, il a donc pris en compte la réponse par défaut, **N**.
  
-<note idee>En anglais vous auriez eu **[Y/n]** , certains programmes non encore traduits vous poseront parfois ce genre de questions.</​note>​+<note idee>En anglais vous auriez eu **[Y/n]** ou **[y/N]**, certains programmes non encore traduits vous poseront parfois ce genre de questions.</​note>​
  
   * Autre exemple, une commande attend une réponse précise :   * Autre exemple, une commande attend une réponse précise :
- +<​code>​ 
-  In which directory do you want to install the mime type icons ?+In which directory do you want to install the mime type icons ?
   [/​usr/​share/​icons]   [/​usr/​share/​icons]
 +</​code>​
  
 Dans cet exemple vous pouvez répondre de multiples choses, mais vous ne comprenez pas la question... heureusement il y a une réponse par défaut. Dans cet exemple vous pouvez répondre de multiples choses, mais vous ne comprenez pas la question... heureusement il y a une réponse par défaut.
Ligne 148: Ligne 147:
 Bon ce n'est pas trop difficile, hein ;-) Bon ce n'est pas trop difficile, hein ;-)
  
-===== Une sorte d'​interface graphique dans le terminal !!! ??? =====+===== Les réponses des commandes ​=====
  
-Vous tomberez parfois sur des sortes d'​interfaces graphiques dans le terminal, ​elles sont souvent bleu moche...et la souris ​ne fonctionne pas dedans... (ça devient rare)+==== Les commandes peu bavardes ==== 
 + 
 +Les commandes comme **cd , mv , cp , ls , rm** et bien d'​autres,​ sont des commandes de gestion de fichiers et de dossiers (naviguer dans les fichiers, les copier, les créer, etc.) et elles ne répondent qu'en cas d'​erreur ! 
 + 
 +Elles ne répondent pas mais fonctionnent bel et bien. 
 + 
 +==== Les commandes très bavardes… ==== 
 + 
 +Certaines commandes sont très bavardes ; prenons un exemple : 
 + 
 +<​code>​sudo apt-get update</​code>​ 
 + 
 +Cette commande permet de mettre à jour la liste des paquets disponibles dans vos [[:​dépôts]] tout ceci en lignes de commande, quand vous l'​exécutez,​ elle aura la très bonne idée de dire tout ce qu'​elle fait... oui, vous pouvez dire que ce n'est pas très utile, et que signaler seulement les erreurs serait plus intelligent aussi dans ce cas… \\ 
 +Mais en fin de compte non, car ce n'est pas comme copier un fichier, qui est un processus quasi instantané,​ là cette commande charge les index à partir d'​internet,​ ce qui peut être long, si les serveurs sont surchargés ou autre. Donc pour ne pas inquiéter l'​utilisateur,​ tout le long du processus est indiqué ce qu'il fait, pour comparer avec une interface graphique, c'est comme la barre de progression et les détails qui sont souvent affichés en dessous, c'est le même principe mais en moins beau. 
 + 
 +==== Avec toutes ces informations comment repérer s'il y a eu une erreur ? ==== 
 + 
 +Si une commande ne marche pas, vous devez avoir un message contenant le mot **error**. 
 + 
 +Si vous avez un message contenant le mot **warning**,​ il indique souvent des informations qui ne servent qu'aux développeurs,​ ou montre des petits détails, qu'il n'est pas vraiment indispensable de corriger ! 
 + 
 +En cas de doute, tapez la commande suivante, qui retourne le code de sortie de la commande précédente : 
 +<code bash> 
 +echo $? 
 +</​code>​ 
 + 
 +Si le code est '​0',​ alors tout s'est bien passé (à condition que la commande appelée précédemment soit bien conçue et suive la convention classique). À noter que si vous répétez à nouveau cette commande, le code affiché sera bien celui de la commande précédente,​ à savoir la première commande "​echo"​ que vous avez tapée. 
 + 
 +<note help>​**Explication :** conventionnellement,​ un programme qui retourne une erreur va renvoyer un code d'​erreur non nul, et **echo $?** retournera donc 1, 2 ou n'​importe quel nombre non nul (généralement positif). Si vous retapez à nouveau **echo $?**, l'​information retournée sera 0, en effet , l'echo retournant précédemment une erreur s'est lui même parfaitement bien déroulé !</​note>​  
 + 
 +===== Comment savoir à quoi sert une commande ? ===== 
 + 
 +Il suffit de taper 
 +<​code>​man commande</​code>​ 
 +Par exemple: 
 +<​code>​ 
 +man iconv 
 +man rm 
 +man bash 
 +man firefox 
 +</​code>​ 
 + 
 +Tous les programmes ont des "​man":​ ce sont les pages de [[:​man|manuel]] de la commande. Parfois même des fichiers de configuration ont des pages de manuel ! \\ 
 +Pour sortir d'une page de manuel, il faut utiliser la touche **q**. 
 + 
 +Pour connaître les principales commandes, voir cette page : [[:​console#​premiers_exemples|Utilisez une console, quelques exemples de commandes.]] 
 + 
 +===== Une sorte d'​interface graphique dans le terminal !? ===== 
 + 
 +Ça devient rare, mais vous tomberez parfois sur des sortes d'​interfaces graphiques dans le terminal, ​qui sont des **[[wpfr>​Environnement_en_mode_texte|environnements en mode texte]]**. Ils sont souvent bleu, moches, ​la souris ​n'​y ​fonctionne pas...
  
-  * Exemple 1, une question à deux choix :+  * **__Exemple 1__**, une question à deux choix :
 <​code>​ <​code>​
 Outil de configuration des paquets Outil de configuration des paquets
Ligne 176: Ligne 224:
 </​code>​ </​code>​
  
-là ce n'est pas compliqué, vous utilisez les flèches **Gauche** ← et → **Droite** de votre clavier pour choisir entre **Oui** ou **Non**, la réponse choisie, est en **Rouge**, et faire **Entrer**.+là ce n'est pas compliqué, vous utilisez les flèches **Gauche** ← et → **Droite** de votre clavier pour choisir entre **Oui** ou **Non**, la réponse choisie, est en **Rouge**, et faire **Entrée**.
  
-  * Exemple 2, une liste :+  * **__Exemple 2__**, une liste :
  
 <​code>​ <​code>​
Ligne 207: Ligne 255:
 Là vous devez choisir quelque chose dans une liste. Vous choisissez avec les flèches **Haut** ↑ et ↓ **Bas**, une fois choisi, faites **Tab** (souvent une touche avec deux flèches ← et → l'une au dessus de l'​autre : ↹), vous devez tomber sur **Ok** et faites **Entrer** pour "​appuyer"​ sur **Ok** Là vous devez choisir quelque chose dans une liste. Vous choisissez avec les flèches **Haut** ↑ et ↓ **Bas**, une fois choisi, faites **Tab** (souvent une touche avec deux flèches ← et → l'une au dessus de l'​autre : ↹), vous devez tomber sur **Ok** et faites **Entrer** pour "​appuyer"​ sur **Ok**
  
-  * Exemple 3, une sélection multiple...+  * **__Exemple 3__**, une sélection multiple...
  
 <​code>​ <​code>​
Ligne 238: Ligne 286:
  
 Voilà, vous connaissez à peu près tout ce que l'on peut rencontrer comme cas de figures dans les "//​interfaces graphiques en lignes de commande//"​. Voilà, vous connaissez à peu près tout ce que l'on peut rencontrer comme cas de figures dans les "//​interfaces graphiques en lignes de commande//"​.
- 
-= 
  
 Une commande parfois répond, et parfois, ne dit rien… Pour comprendre pourquoi ce comportement est normal, une petite explication s'​impose. Une commande parfois répond, et parfois, ne dit rien… Pour comprendre pourquoi ce comportement est normal, une petite explication s'​impose.
- 
-==== Les commandes peu bavardes ==== 
- 
-Les commandes comme **cd , mv , cp , ls , rm** et sûrement bien d'​autres,​ sont des commandes de gestion de fichiers et de dossiers ; elles ne répondent qu'en cas d'​erreur ! Elles remplacent en quelque sorte votre navigateur de fichiers, mais dans un terminal… 
- 
-Pour comprendre pourquoi elles ne répondent pas, une petite comparaison entre ces commandes et un navigateur de fichiers peut être pratique. 
- 
-Si la commande confirmait à chaque création de fichier, qu'​elle a réussi à faire le fichier… Ce serait un peu comme si vous faisiez un copier-coller,​ et que l'on vous dise, dans une belle fenêtre, "Votre fichier a bien été copié-collé dans cet emplacement"​... \\ 
-Admettons que ce serait une perte de temps, et que signaler seulement les erreurs est bien plus utile... 
- 
-==== Les commandes très bavardes… ==== 
- 
-Certaines commandes sont très bavardes ; prenons un exemple : 
- 
-  sudo apt-get update 
- 
-Cette commande permet de mettre à jour la liste des paquets disponibles dans vos [[:​dépôts]] tout ceci en lignes de commande, quand vous l'​exécutez,​ elle aura la très bonne idée de dire tout ce qu'​elle fait... oui, vous pouvez dire que ce n'est pas très utile, et que signaler seulement les erreurs serait plus intelligent aussi dans ce cas… \\ 
-Mais en fin de compte non, car ce n'est pas comme copier un fichier, qui est un processus quasi instantané,​ là cette commande charge les index à partir d'​internet,​ ce qui peut être long, si les serveurs sont surchargés ou autre. Donc pour ne pas inquiéter l'​utilisateur,​ tout le long du processus est indiqué ce qu'il fait, pour comparer avec une interface graphique, c'est comme la barre de progression et les détails qui sont souvent affichés en dessous, c'est le même principe mais en moins beau. 
- 
-==== Avec toutes ces informations comment repérer s'il y a eu une erreur ? ==== 
- 
-Si une commande ne marche pas, vous devez avoir un message contenant le mot **error**. 
- 
-Si vous avez un message contenant le mot **warning** ignorez-le, il indique souvent des informations qui ne servent qu'aux développeurs,​ ou montre des petits détails, qu'il n'est pas vraiment indispensable de corriger ! 
- 
-En cas de doute, tapez la commande suivante, qui retourne le code de sortie de la commande précédente :  
- 
-  echo $? 
- 
-Si le code est '​0',​ alors tout s'est bien passé (a condition que la commande appelée précédemment soit bien conçue et suive la convention classique). À noter que si vous répétez à nouveau cette commande, le code affiché sera bien celui de la commande précédente,​ à savoir la première commande "​echo"​ que vous avez tapée. ​ 
- 
-**Explication :** conventionnellement,​ un programme qui retourne une erreur va renvoyer un code d'​erreur non nul, et **echo $?** retournera donc 1, 2 ou n'​importe quel nombre non nul (généralement positif). Si vous retapez à nouveau **echo $?**, l'​information retournée sera 0, car en effet l'echo retournant précédemment une erreur s'est lui même parfaitement bien déroulé ! 
- 
-===== Comment savoir à quoi sert une commande ? ===== 
- 
-Il suffit de taper  
-   man commande 
-Par exemple: 
-   man iconv 
-   man rm 
-   man bash 
-   man firefox 
-    
-Tous les programmes ont des "​man":​ ce sont les pages de [[:​man|manuel]] de la commande. Parfois même des fichiers de configuration ont des pages de manuel ! \\ 
-Pour sortir d'une page de manuel, il faut utiliser la touche **q**. 
- 
-Pour connaître les principales commandes, voir cette page : [[:​console#​premiers_exemples|Utilisez une console, quelques exemples de commandes.]] 
  
 ===== Quels sont tous les programmes utilisant la ligne de commande ? ===== ===== Quels sont tous les programmes utilisant la ligne de commande ? =====
Ligne 299: Ligne 298:
  
 Vous pouvez appuyer plusieurs fois sur ↑ pour aller plus loin dans l'​historique ou taper la commande Vous pouvez appuyer plusieurs fois sur ↑ pour aller plus loin dans l'​historique ou taper la commande
-  ​history +<​code>​history</​code>​ 
-Cette commande liste les 500 dernières commandes plus celles de la session actuelle. Elle retourne quelque chose de ce type : +Cette commande liste les 500 dernières commandes plus celles de la session actuelle. Elle retourne quelque chose de ce type: 
-<file>+<code>
 (489 lignes masquées...) (489 lignes masquées...)
   490  eject /dev/sr0   490  eject /dev/sr0
Ligne 315: Ligne 314:
   500  mount   500  mount
   501  history ​   501  history ​
-</file+</code
-Si vous souhaiter ​relancer la commande numéro 492, au lieu de la retaper, il suffit de lancer cette commande : +Si vous souhaitez ​relancer la commande numéro 492, au lieu de la retaper, il suffit de lancer cette commande: 
-  !492+<​code>​!492</​code>​
  
-Vous pouvez également rechercher une commande précédemment tapée. Commencer par taper <​ctrl>​+r. Tapez ensuite les premières lettres de la commande recherchée,​ et la recherche se met à jour au fur et à mesure.  +Vous pouvez également rechercher une commande précédemment tapée. Commencer par taper <​ctrl>​+r. Tapez ensuite les premières lettres de la commande recherchée,​ et la recherche se met à jour au fur et à mesure. 
-  (reverse-i-search)`apt':​ sudo apt-get install kmymoney2 ​+<​code>​ 
 +(reverse-i-search)`apt':​ sudo apt-get install kmymoney2 ​ 
 +</​code>​
  
 Vous pouvez alors appuyer à nouveau sur <​ctrl>​+r afin de sélectionner un résultat plus ancien. Enfin, tapez ENTER pour valider, ou <​ctrl>​+g pour annuler. Vous pouvez alors appuyer à nouveau sur <​ctrl>​+r afin de sélectionner un résultat plus ancien. Enfin, tapez ENTER pour valider, ou <​ctrl>​+g pour annuler.
-Il est également possible de vider cet historique en utilisant la commande suivante +Il est également possible de vider cet historique en utilisant la commande suivante: 
-   ​history -c +<​code>​history -c</​code>​ 
-Il est possible aussi de ne supprimer qu'une ligne (par exemple un mount avec un mot de passe admin!), pour cela utiliser l'​option -d suivit ​du n° de ligne +Il est possible aussi de ne supprimer qu'une ligne (par exemple un mount avec un mot de passe admin!), pour cela utiliser l'​option -d suivie ​du n° de ligne: 
-   ​history -d 494+<​code>​history -d 494</​code>​
 supprime la ligne //sudo mount /​data/​Véronique///​ dans la liste ci-dessus. supprime la ligne //sudo mount /​data/​Véronique///​ dans la liste ci-dessus.
-=====Pour compléter les commandes à partir de l'​historique ​:=====+ 
 +En ajoutant 
 +<​code>​HISTCONTROL=ignorespace</​code>​ dans le .bashrc  
 +ou 
 +<​code>​setopt HIST_IGNORE_SPACE</​code>​ dans le .zshrc  
 + 
 +toute commande débutant avec un espace en début de ligne n'​apparaîtra pas dans l'​historique. 
 + 
 +===== Taille de l'​historique ===== 
 +Pour modifier la taille de l'​historique des commandes et aller au delà des 500 lignes par défaut, il faut modifier la variable d'​environnement //​HISTSIZE//​ 
 +<​code>​export HISTSIZE=1000</​code>​ avec 1000 ou le nombre désiré. 
 + 
 +Pour que cette modification soit prise en compte de manière définitive (pour un utilisateur),​ il faut ajouter la ligne suivante au fichier .bashrc de l'​utilisateur (/​home/​utilisateur/​.bashrc) 
 +<​code>​echo '​export HISTSIZE=1000'​ >> ~/.bashrc </​code>​ 
 +=====Pour compléter les commandes à partir de l'​historique ===== 
 Vous le savez certainement,​ toutes les commandes que vous utilisez dans un terminal sont archivées et vous pouvez y accéder par ordre chronologique en appuyant sur les touches fléchées Haut ou Bas. La fonctionnalité de base se limite à cela. Mais on peut faire beaucoup mieux et beaucoup plus pratique. Si vous voulez retrouver une commande particulière tapée il y a un moment. Prenons pour exemple ...  « rm /​home/​user/​fichier.ext » ! Vous le savez certainement,​ toutes les commandes que vous utilisez dans un terminal sont archivées et vous pouvez y accéder par ordre chronologique en appuyant sur les touches fléchées Haut ou Bas. La fonctionnalité de base se limite à cela. Mais on peut faire beaucoup mieux et beaucoup plus pratique. Si vous voulez retrouver une commande particulière tapée il y a un moment. Prenons pour exemple ...  « rm /​home/​user/​fichier.ext » !
 Vous êtes obligés de taper Haut jusqu'​à ce que vous tombiez dessus, et cela peut parfois être assez long — suffisamment long pour qu'il soit plus rapide de taper la commande intégralement. Vous êtes obligés de taper Haut jusqu'​à ce que vous tombiez dessus, et cela peut parfois être assez long — suffisamment long pour qu'il soit plus rapide de taper la commande intégralement.
Ligne 335: Ligne 351:
 Alors voici comment procéder : Alors voici comment procéder :
  
-Dans votre fichier ~/.inputrc, ajoutez à la fin :  +Dans votre fichier ​**~/.inputrc**, ajoutez à la fin : 
-<code>+<file bash>
 "​\e[A":​ history-search-backward "​\e[A":​ history-search-backward
-"​\e[B":​ history-search-forward</​code+"​\e[B":​ history-search-forward 
-Dans votre fichier ~/.bashrc, ajoutez à la fin : +</file
-<code>shopt -s histappend +Dans votre fichier ​**~/.bashrc**, ajoutez à la fin : 
-PROMPT_COMMAND='​history -a'</​code>+<file bash> 
 +shopt -s histappend 
 +PROMPT_COMMAND='​history -a' 
 +</file>
 Relancez votre terminal. Et essayez ! Relancez votre terminal. Et essayez !
-Pratique, non ?  +Pratique, non ?
- +
-Vous pouvez également modifier graphiquement l'​historique. Par exemple si vous avez copié un texte très long par erreur dans votre terminal. Pour cela modifier le fichier //​.bash_history//​ et supprimez les lignes que vous souhaitez. +
-===== Du fun pour le terminal de geek ===== +
- +
-  * Regarder un remake de star wars un nouvel espoir en ascii :  +
-<​code>​telnet towel.blinkenlights.nl</​code>​ +
-  * Les petits fun laissés par les développeurs : (appelé [[wp>​Easter_egg_%28media%29|easter egg]]) +
-<​code>​apt-get moo</​code>​ +
-<​code>​aptitude moo +
- +
-aptitude -v moo +
- +
-aptitude -vv moo +
- +
-aptitude -vvv moo +
- +
-aptitude -vvvv moo +
- +
-aptitude -vvvvv moo +
- +
-aptitude -vvvvvv moo</​code>​ +
- +
-  * Avoir un fond d'​écran matrix dans la console avec [[apt://​cmatrix|cmatrix]]. +
- +
-  * Affiche un train dans votre terminal en [[:​tutoriel:​comment_installer_un_paquet|installant]] **[[apt>​sl]]** et en le lançant avec: +
-<​code>​sl</​code>​ +
- +
-<​note>​Ceux qui suivent ne semblent plus fonctionner (Ubuntu 14.04)</​note>​ +
-<​code>​tar -cvf toto/</​code>​ +
- +
-<​code>​checking for beer in -lfridge... no</​code>​ +
- +
-<​code>​zgrep "​The.*Release"​ /​usr/​share/​doc/​dpkg/​changelog.Debian.gz</​code>​ +
-* Chatter avec un Bot :  +
-<​code>​telnet the-funk.net 7000 </​code>​ +
- +
  
 +Vous pouvez également modifier graphiquement l'​historique. Par exemple si vous avez copié un texte très long par erreur dans votre terminal. Pour cela modifier le fichier **.bash_history** et supprimez les lignes que vous souhaitez.
  
 ===== En savoir plus sur la console ===== ===== En savoir plus sur la console =====
  
-La console est en quelque sorte ce que fait tourner un terminal, la console existe en mode texte « total » c'est-à-dire ​que sur votre écran, vous avez juste ce qui est à l'​intérieur d'​un ​terminal+La console est ce qu'​afficherait Ubuntu s'il n'y avait aucun environnement. C'​est ​cette console ​que le terminal ​va émuler.
  
 Pour en savoir plus sur la console, voir cette page : [[console]]. Pour en savoir plus sur la console, voir cette page : [[console]].
  
 ===== Personnaliser son terminal ===== ===== Personnaliser son terminal =====
 +T
 ==== Configurer les raccourcis clavier ==== ==== Configurer les raccourcis clavier ====
  
 Lancer un Terminal, dans //Édition -> Raccourcis clavier//, puis changer les raccourcis comme vous le souhaitez. Lancer un Terminal, dans //Édition -> Raccourcis clavier//, puis changer les raccourcis comme vous le souhaitez.
  
-<note important>​Les raccourcis Ctrl+[lettre] sont en général utilisés par le [[shell]], il est donc déconseillé de les utiliser pour les raccourcis du terminal.</​note>​+<note important>​Les raccourcis Ctrl+[lettre] sont en général utilisés par le [[:shell]], il est donc déconseillé de les utiliser pour les raccourcis du terminal.</​note>​
  
 ==== Configurer l'​interface ==== ==== Configurer l'​interface ====
-Aller dans le menu //Édition -> Profils//, puis cliquez sur le bouton //Modifier//.+Aller dans le menu //Édition -> Préférences du profil//.
  
 === Les couleurs === === Les couleurs ===
-  * Mettre les palettes prédéfinie sur Custom, puis+  * Mettre les palettes prédéfinie sur //​Personnalisée//​, puis
   * Choisir vos couleurs, nous conseillons du clair (blanc ou gris coloré) pour la couleur de texte et noir (noir coloré) pour la couleur d'​arrière plan.   * Choisir vos couleurs, nous conseillons du clair (blanc ou gris coloré) pour la couleur de texte et noir (noir coloré) pour la couleur d'​arrière plan.
 +  * pour modifier la couleur de votre invite de commande lors du passage en super utilisateur,​ éditez le ficher **/​etc/​bash.bashrc** :
 +modifiez la ligne
 +<file bash>​PS1='​....'​ </​file>​
 +en
 +<file bash>
 +if [ `whoami` = root ]; then
 +      PS1='​${debian_chroot:​+($debian_chroot)}\[\033[01;​31m\]\u@\h\[\033[00m\]:​\[\033[01;​34m\]\w\[\033[00m\]\$ '
 +      else
 +      PS1='​${debian_chroot:​+($debian_chroot)}\[\033[01;​32m\]\u@\h\[\033[00m\]:​\[\033[01;​34m\]\w\[\033[00m\]\$ '
 +      fi
 +</​file>​
 +
 +L'​invite de commande super utilisateur s'​affiche alors sous la forme [utilisateur] en rouge suivi de [chemin d'​accès courant] en bleu au redémarrage du Terminal.
  
 === L'​arrière-plan === === L'​arrière-plan ===
-  * Nous conseillons ​par exemple ​de mettre la transparence (ombrage transparent) vers la droite (soit environ 8/​10<​sup>​ème</​sup>,​ 80 % de transparence). Vous pourrez ainsi garder un œil sur ce qui se passe derrière le Terminal.+  * Toujours dans l'​onglet //​Couleurs//,​ nous conseillons de mettre la transparence (ombrage transparent) vers la droite (soit environ 8/​10<​sup>​ème</​sup>,​ 80 % de transparence), ou cocher //Utiliser la transparence du thème du système//. Vous pourrez ainsi garder un œil sur ce qui se passe derrière le Terminal. 
 + 
 +=== L'​invite de commande (prompt) === 
 + 
 +Dans votre fichier **~/​.bashrc**,​ se trouve une variable **PS1** qui décrit comment l'​invite de commande est définie. 
 + 
 +^ Syntaxe ​        ^ Signification ^ 
 +| ''​\u'' ​  | nom de l'​utilisateur | 
 +| ''​\h''​ | nom de la machine ​ | 
 +| ''​\w''​ | le chemin de //​travail//​… où vous êtes | 
 +| ''​\n'' ​  | retour à la ligne |  
 +| ''​\$''​ | affiche le caractère $, ce qui permet de se repérer et de séparer l'​invite de votre saisie | 
 + 
 +L'​invite par défaut contient donc ''​\u@\h:​\w\$''​ mais y est ajouté le codage des couleurs. 
 + 
 +Pour les développeurs utilisant [[:git]], il peut par exemple être ajouté le nom du projet et de la branche de travail en cours, … 
 + 
 +Penser, après chaque modification,​ à exécuter : 
 +<​code>​source ~/​.bashrc</​code>​
  
 ==== Un logo à l'​ouverture du terminal ==== ==== Un logo à l'​ouverture du terminal ====
Ligne 411: Ligne 425:
 {{ :​terminal:​term_logo.png | }} {{ :​terminal:​term_logo.png | }}
  
-Si linuxlogo n'est pas installé, installez-le : [[apt://linuxlogo]] +Si linuxlogo n'est pas installé, installez-le : [[apt>linuxlogo]] 
- +<​code>​sudo apt-get install linuxlogo</​code>​
-  ​sudo apt-get install linuxlogo+
  
 Ouvrez un terminal et entrez : ''​**linuxlogo -L list**''​ pour avoir la liste des logos disponibles. Ouvrez un terminal et entrez : ''​**linuxlogo -L list**''​ pour avoir la liste des logos disponibles.
-Ce que j'​obtiens avec la version ​10.10 +Ce que j'​obtiens avec la version ​16.04 LTS 
- +<​code>​ 
-  Available Built-in Logos:+Available Built-in Logos:
  Num Type Ascii Name Description  Num Type Ascii Name Description
  1 Classic Yes aix AIX Logo  1 Classic Yes aix AIX Logo
Ligne 424: Ligne 437:
  3 Banner Yes bsd_banner FreeBSD Logo  3 Banner Yes bsd_banner FreeBSD Logo
  4 Classic Yes irix Irix Logo  4 Classic Yes irix Irix Logo
- 5 Banner Yes solaris The Default Banner Logos + 5 Classic Yes openbsd OpenBSD Logo 
- 6 Banner Yes banner-simp Simplified Banner Logo + 6 Banner Yes openbsd_banner OpenBSD Logo 
- 7 Banner Yes banner The Default Banner Logo + 7 Banner Yes solaris The Default Banner Logos 
- 8 Classic Yes classic-nodots The Classic Logo, No Periods + 8 Banner Yes banner-simp Simplified Banner Logo 
- 9 Classic Yes classic-simp Classic No Dots Or Letters + 9 Banner Yes banner The Default Banner Logo 
- 10 Classic Yes classic The Default Classic Logo + 10 Classic Yes classic-nodots The Classic Logo, No Periods 
- 11 Classic Yes core Core Linux Logo + 11 Classic Yes classic-simp Classic No Dots Or Letters 
- 12 Banner Yes debian_banner Debian Banner (white)  + 12 Classic Yes classic The Default Classic Logo 
- 13 Classic Yes debian_old Debian Old Penguin Logos  + 13 Classic Yes core Core Linux Logo 
- 14 Classic Yes debian Debian Swirl Logos + 14 Banner Yes debian_banner_2 Debian Banner 2 
- 15 Classic Yes gnu_linux Classic GNU/Linux + 15 Banner Yes debian_banner Debian Banner (white)  
- 16 Banner Yes mandrake_banner Mandrake(TM) Linux Banner + 16 Classic Yes debian_old Debian Old Penguin Logos  
- 17 Banner Yes mandrake Mandrakelinux(TM) Banner + 17 Classic Yes debian Debian Swirl Logos 
- 18 Banner Yes mandriva Mandriva(TM) Linux Banner + 18 Classic Yes gnu_linux Classic GNU/Linux 
- 19 Banner Yes pld PLD Linux banner + 19 Banner Yes mandrake_banner Mandrake(TM) Linux Banner 
- 20 Banner Yes redhat RedHat Banner (white)  + 20 Banner Yes mandrake Mandrakelinux(TM) Banner 
- 21 Banner Yes slackware Slackware Logo + 21 Banner Yes mandriva Mandriva(TM) Linux Banner 
- 22 Banner Yes sme SME Server Banner Logo + 22 Banner Yes pld PLD Linux banner 
- 23 Banner Yes sourcemage_ban Source Mage GNU/Linux banner + 23 Classic Yes raspi An ASCII Raspberry Pi logo 
- 24 Banner Yes sourcemage Source Mage GNU/Linux large + 24 Banner Yes redhat RedHat Banner (white)  
- 25 Banner Yes suse SUSE Logo + 25 Banner Yes slackware Slackware Logo 
- 26 Banner Yes ubuntu Ubuntu Logo + 26 Banner Yes sme SME Server Banner Logo 
- + 27 Banner Yes sourcemage_ban Source Mage GNU/Linux banner 
-Testez les différents logos en entrant ceci :  + 28 Banner Yes sourcemage Source Mage GNU/Linux large 
- + 29 Banner Yes suse SUSE Logo 
-  linuxlogo -L 9+ 30 Banner Yes ubuntu Ubuntu Logo 
 +</​code>​
  
 +Testez les différents logos en entrant ceci :
 +<​code>​ linuxlogo -L 9</​code>​
 (équivaut aussi à **''​linuxlogo -L classic-simp''​**,​ celui de la capture écran ci-dessus) (équivaut aussi à **''​linuxlogo -L classic-simp''​**,​ celui de la capture écran ci-dessus)
 +<note tip>Un petit script aussi inutile que le logo pour faire défiler rapidement les différents logos disponibles,​ à copier/​coller intégralement dans votre terminal : <​code>​fichTemp=$(mktemp);​ linuxlogo -L list > "​$fichTemp";​ NbPossibilites=$(awk -F $'​\t'​ ' $2 ~ /​[0-9]{1,​2}/​ {Numero=$2} END {print Numero}'​ $fichTemp); i=1; while [[ "​$i"​ -le "​$NbPossibilites"​ ]]; do echo; echo "​----------";​ echo "Logo n° ""​$i";​ echo "​----------";​ linuxlogo -L "​$i";​ sleep 2; let "​i++";​ done; echo "​Faites votre choix";​ rm "​$fichTemp"</​code></​note>​
  
 Un fois que vous avez choisi votre logo [[:​tutoriel:​comment_modifier_un_fichier|modifiez le fichier]] **/​etc/​linux_logo.conf** Un fois que vous avez choisi votre logo [[:​tutoriel:​comment_modifier_un_fichier|modifiez le fichier]] **/​etc/​linux_logo.conf**
  
-la fin du fichier vous trouverez ceci : ''​**-L debian**'',​ remplacez //debian// par le nom ou le numéro du logo que vous avez choisi. +À la fin du fichier vous trouverez ceci : ''​**-L debian**'',​ remplacez //debian// par le nom ou le numéro du logo que vous avez choisi.
- +
-Pour finaliser le tout, afin que le logo s'​affiche au démarrage de votre terminal, [[:​tutoriel:​comment_modifier_un_fichier|éditez votre fichier]] **.bashrc** +
- +
-  nano ~/.bashrc +
- +
-ou +
- +
-  gedit ~/.bashrc+
  
 +Pour finaliser le tout, afin que le logo s'​affiche au démarrage de votre terminal, [[:​tutoriel:​comment_modifier_un_fichier|éditez votre fichier]] **~/​.bashrc**
 À la fin de votre fichier ajoutez la ligne (après les alias normalement) À la fin de votre fichier ajoutez la ligne (après les alias normalement)
- +<​file>​linuxlogo -L ***le numéro du logo choisi***</​file>​
-  ​linuxlogo -L ***le numéro du logo choisi***+
  
 Et voilà, complètement inutile, mais geekement indispensable ! Et voilà, complètement inutile, mais geekement indispensable !
 +<note tip>Une alternative qui fonctionne aussi bien est **[[apt>​neofetch]] modifier votre fichier ~/.bashrc (il faut activer les fichier caché avec la touche (Ctrl et h)**</​note>​ 
 + 
 ==== Un terminal sur le bureau ==== ==== Un terminal sur le bureau ====
 +
 +<note important>​Ce qui suit est un tutoriel spécifique au terminal de [[:Xfce]]. Vous pouvez l'​adapter à votre besoin en remplaçant les occurences liées à [[:​xfterm4|xfce-terminal]] par tout autre terminal de votre convenance, et en regardant les options possibles de celui-ci, [[:​devilspie]] s'​occupant du comportement de la fenêtre.\\
 +**Xfce-terminal** reste une option envisageable mais peut emmener des dépendances supplémentaires alors qu'il est probable que le terminal proposé par défaut avec votre environnement fasse l'​affaire. </​note>​
  
 Beaucoup de personnes souhaitent avoir un terminal disponible sur le bureau, voilà l'​astuce. Beaucoup de personnes souhaitent avoir un terminal disponible sur le bureau, voilà l'​astuce.
  
 === Installation === === Installation ===
-Tout d'​abord il faut installer les paquets [[apt://xfce4-terminal|xfce4-terminal]] et [[apt://devilspie|devilspie]],​ le premier est un terminal, le second permet de définir le comportement des fenêtres, pour en savoir plus, voir cette page : [[devilspie]].+Tout d'​abord il faut installer les paquets [[apt>xfce4-terminal|xfce4-terminal]] et [[apt>devilspie|devilspie]],​ le premier est un terminal, le second permet de définir le comportement des fenêtres, pour en savoir plus, voir cette page: [[devilspie]].
  
 === Paramétrage === === Paramétrage ===
-Il est possible de lancer ce nouveau terminal via //​Applications → Accessoires → Terminal//. Dans les préférences,​ il faut désactiver la barre de défilement (//​Préférences → Général//​),​ demander à ne pas afficher les bords de la fenêtre et définir l'​arrière comme transparent (//​Préférences → Aspect//).+Il est possible de lancer ce nouveau terminal via //​Applications → Accessoires → Terminal//. Dans les préférences,​ il faut désactiver la barre de défilement (//​Préférences → Général//​),​ demander à ne pas afficher les bords de la fenêtre et définir l'​arrière comme transparent (//​Préférences → Aspect//) .
  
-présent, il faut paramétrer devilspie. Pour cela, il faut créer un dossier **.devilspie** dans le dossier utilisateuret y créer un fichier intitulé : **xfce4-terminal.ds**. +À présent, il faut paramétrer devilspie. Pour cela, il faut créer un dossier **.devilspie** dans le dossier utilisateur
-  mkdir ~/​.devilspie +<​code>​ 
-  ​gedit ~/​.devilspie/​xfce4-terminal.ds+mkdir ~/​.devilspie 
 +</​code>​ 
 +et y créer un fichier intitulé: **xfce4-terminal.ds**. 
 +<​code>​gedit ~/​.devilspie/​xfce4-terminal.ds</​code>​
  
 Il faut créer la règle qui paramètre xfce4-terminal:​ Il faut créer la règle qui paramètre xfce4-terminal:​
-  ​(if (is (window_class) "​Xfce4-terminal"​)  +<file bash> 
-  (begin  +(if (is (window_class) "​Xfce4-terminal"​) 
-  (below) +(begin 
-  (skip_tasklist) +(below) 
-  (skip_pager) +(skip_tasklist) 
-  (wintype "​dock"​) +(skip_pager) 
-  ))+(wintype "​dock"​) 
 +)) 
 +</​file>​ 
 +  ​* below : Permet de mettre la fenêtre en-dessous de toutes les autres. 
 +  * skip_tasklist : N'​affiche pas la fenêtre dans la barre de tâches. 
 +  * skip_pager : Ne permet pas de sélectionner la fenêtre via le pager (**Alt + Tab**
 +  * wintype : Permet de ne pas réduire la fenêtre lorsque l'on demande à afficher le bureau (bouton généralement en bas à gauche.
  
-  ​below : Permet de mettre la fenêtre en dessous de toutes les autres. +Cela fait, il ne reste plus qu'à lancer ​**devilspie** et **xcfe4-terminal** au démarrage. Dans //Système → Préférences → Sessions//, il faut ajouter deux commandes: 
-  ​skip_tasklist : N'​affiche pas la fenêtre dans la barre de tâches +<​file>​devilspie –a</​file>​ 
-  ​skip_pager : Ne permet de sélectionner la fenêtre via le pager (**Alt + Tab**) +**-a** permet d'appliquer les règles aux fenêtres déjà ouvertes; 
-  wintype : Permet de ne pas réduire la fenêtre lorsque l'on demande à afficher le bureau (bouton généralement ​en bas à gauche)+<​file>​xfce4-terminal --geometry=LARGEURxHAUTEUR+X+Y</​file>​ 
 +où LARGEUR et HAUTEUR sont exprimées ​en caractère de terminal, X et Y représentent les coordonnées du point supérieur ​gauche ​du terminal. Pour donner une idée chez moi la commande est: 
 +<​file>​xfce4-terminal --geometry=62x40+650+30</​file>​
  
-Cela fait, il ne reste plus qu'à lancer **devilspie** et **xcfe4-terminal** au démarrage. Dans //Système → Préférences → Sessions//, il faut ajouter deux commandes : 
-  devilspie -a 
--a permet d'​appliquer les règles aux fenêtres déjà ouvertes 
-  xfce4-terminal --geometry=LARGEURxHAUTEUR+X+Y 
-où LARGEUR et HAUTEUR sont exprimées en caractère de terminal, X et Y représente les coordonnées du point supérieur gauche du terminal. Pour donner une idée chez moi la commande est : 
-  xfce4-terminal --geometry=62x40+650+30 
  
- +<note tip>​Avant d'​ajouter les commandes ​au démarrage, faites les tests à partir d'un terminal, surtout en ce qui concerne la géométrie du terminal sur le bureau.</​note>​
-<note tip>​Avant d'​ajouter les commande ​au démarrage, faites les tests à partir d'un terminal, surtout en ce qui concerne la géométrie du terminal sur le bureau.</​note>​+
  
 ===== Pages concernant le terminal ===== ===== Pages concernant le terminal =====
 +Ici vous trouverez quelques pages pointant sur des astuces ou approfondissements de certaines commandes.\\
 +Vous y trouverez également différentes pages de présentation d'​autres terminaux. Ne restez pas forcément figé sur celui installé par défaut pour vous faire une idée de la valeur de chacun. En effet certains ont des fonctionnalités que d'​autres n'ont pas (par exemple le multifenêtrage)
 +{{topic>​terminal}}
  
-{{topic>​terminal}} 
 ===== Voir aussi ===== ===== Voir aussi =====
-  * [[CLIcompanion]] ([[https://​launchpad.net/​clicompanion|site]]) est un terminal qui vous permet de stocker et de commandes de créer un «dictionnaire de commande.((N'​oubliez pas la commande man pour connaitre les autres commandes.)) 
-  * [[http://​doc.ubuntu-fr.org/​terminator|Terminator]] est un terminal virtuel qui a la particularité de permettre de splitter la fenêtre. 
-  * [[http://​finalterm.org/​|Final Term]] un terminal moderne disposant d'une compétition des commandes très efficace. 
-  * [[http://​www.tuxradar.com/​content/​linux-tips-every-geek-should-know|Linux tips every geek should know]] 
-  * [[http://​www.tuxradar.com/​content/​more-linux-tips-every-geek-should-know|More Linux tips every geek should know]] 
-  * [[http://​www.howtogeek.com/​howto/​linux/​stupid-geek-tricks-watch-movies-in-your-linux-terminal-window/​|Stupid Geek Tricks: Watch Movies in Your Linux Terminal Window]] 
-  * [[http://​www.pixelbeat.org/​cmdline.html|Linux Commands]] 
-  * Formation Vidéo de base pour les commandes ([[http://​ressources.tutoriels-video.fr/​Ubuntu/​Ubuntu-pour-les-debutants/​tuto-concole/​|site]]) 
----- 
  
-//​Contributeurs:​ [[utilisateurs:​Fabien26]],​ [[utilisateurs:​1h0ma5]].//​+  * [[https://​launchpad.net/​clicompanion|CLI Companion]] est un terminal qui vous permet de stocker et de commander votre «dictionnaire de commande.((N'​oubliez pas la commande man pour connaitre les autres commandes.)) FIXME plus développé?​ 
 +  * [[https://​finalterm.org/​|Final Term]] un terminal moderne disposant d'une complétion des commandes très efficace. FIXME développement arrêté 
 +  * [[http://​www.tuxradar.com/​content/​linux-tips-every-geek-should-know|Astuce que tous geek Linux devraient connaitre]](en). 
 +  * [[http://​www.tuxradar.com/​content/​more-linux-tips-every-geek-should-know|Un peu plus d'​astuce que tous les geek Linux devraient connaitre]](en) 
 +  * [[https://​www.howtogeek.com/​howto/​linux/​stupid-geek-tricks-watch-movies-in-your-linux-terminal-window/​|Astuce Geek Inutile: Regarder un film en ASCII dans son terminal]](en) 
 +  * [[http://​www.pixelbeat.org/​cmdline.html|Memo de commandes Linux]](en) 
 +  * [[http://​ressources.tutoriels-video.fr/​Ubuntu/​Ubuntu-pour-les-debutants/​tuto-concole/​| Formation Vidéo de base pour les commandes]] 
 + 
 +---- 
 +//​Contributeurs:​ [[utilisateurs:​Fabien26]],​ [[utilisateurs:​1h0ma5]], [[utilisateurs:​eagle08]].//
  • terminal.1456162383.txt.gz
  • Dernière modification: Le 22/02/2016, 18:33
  • par 78.205.188.134