kubuntu-fr

Communauté francophone des utilisateurs de Kubuntu

 

[[terminal]]

Piste: » terminal


Le terminal GNU/Linux

Le terminal est un programme qui ouvre une console dans une interface graphique, il permet de lancer des commandes.

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'expliquer 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.

Il est probable qu'aucune des deux méthodes (commandes ou interface graphique) ne remplacera jamais complètement l'autre car elles se complètent plus qu'elles ne rivalisent.

Où est-il ?

Ouvrir le Terminal :

Ubuntu et Edubuntu Applications → Accessoires → Terminal ou Alt+F2 et tapez gnome-terminal
Kubuntu K → Système → Konsole ou Alt+F2 et tapez konsole
Xubuntu Applications → Accessoires → Terminal ou Alt+F2 et tapez xfterm4

Utilisation

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 copié collé ne sont pas Crtl+C ↔ Ctrl+V par défaut, mais Maj+Ctrl+C et Maj+Ctrl+V car Ctrl+C correspond à cliquer sur la croix dans un programme fenêtré Ctrl+C ferme donc la commande en cours si vous jugez bon de la stopper. Il existe bien d'autres commandes Ctrl dans le terminal que nous aborderons plus loin. Vous pouvez cependant modifier les raccourcis du Terminal, voir tout en bas la rubrique personnaliser son terminal mais vous risquez de vous exposer à des conflits entre les différentes conventions.

Qu'est-ce qu'une commande ?

Une commande est une ligne de texte, sur la documentation elle apparaît souvent comme ça :

ma commande

Parfois, il y en a plusieurs de suite, comme ça :

ma commande 1
ma commande 2 
ma commande 3

Quand il y a plusieurs commandes de suite il faudra copier-coller les lignes une par une, et faire Entrer entre chaque dans le terminal. (copier-coller commande 1, Entrer, copier-coller commande 2, Entrer, etc.)

Toutes les lignes comme ça ne sont pas des lignes de commande !

Ne vous inquiétez pas, il est indiqué avec une ligne noire comme celles-là ce que vous devez faire avec.

Compléter une commande

Parfois vous trouverez une commande comme celles-ci :

mv "le fichier à déplacer" "le dossier où le déplacer"
stella /vers/une/rom
gedit 'mon fichier.conf'

Vous vous doutez bien qu'il ne faut pas la recopier telle quelle, il faut bien sur remplacer la phrase entre guillemets (ou je ne sais quoi), par ce qui vous est demandé, mais comment faire exactement ?

Et bien lorsqu'il s'agit d'un fichier ou d'un dossier, vous pouvez juste taper le début de la commande, faire un espace puis glisser le fichier ou le dossier !

Pour le premier exemple cela donne : mv, espace, glisser le fichier dans le terminal, espace, glisser le dossier dans le terminal, 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 surement expliqué comment connaitre ce qu'il faut y mettre entre les guillemets, par exemple :

sudo adduser 'votre pseudo' vboxusers

là il faut juste mettre votre pseudo à la place de 'votre pseudo' mais vous l'aviez surement déjà deviné…

Quand les commandes me posent des questions...

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 :
Souhaitez-vous continuer [O/n] ?

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

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.

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.

En anglais vous auriez eu [Y/n] , certains programmes non encore traduits vous poseront parfois ce genre de questions.

  • Autre exemple, une commande attend une réponse précise :
In which directory do you want to install the mime type icons ?
[/usr/share/icons]

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.

Comment la reconnaître ?

Eh bien, elle est entre crochets […] il suffira donc de faire Entrer, sans rien taper comme réponse, pour utiliser cette réponse par défaut !

Bon ce n'est pas trop difficile, hein ;-)

Une sorte d'interface graphique dans le terminal !!! ???

Vous tomberez parfois sur des sortes d'interfaces graphiques dans le terminal, elle sont souvent bleu moche…, et la souris ne fonctionne pas dedans…

  • Exemple 1, une question à deux choix :
Outil de configuration des paquets


 ┌─────────────────────┤ Configuration de xserver-xorg ├─────────────────────┐
 │                                                                           │
 │ Utilisez cette option si vous voulez que le choix du type de serveur X    │
 │ et du module du pilote de votre carte vidéo soient automatiques. Si       │
 │ cette détection automatique échoue, vous devrez entrer ces informations   │
 │ vous-même. Si elle réussit, les questions de configuration suivantes      │
 │ seront préremplies.                                                       │
 │                                                                           │
 │ Si vous préférez choisir le serveur X et le pilote vous-même, ne          │
 │ choisissez pas cette option. Vous n'aurez toutefois pas à choisir le      │
 │ serveur X si un seul est disponible.                                      │
 │                                                                           │
 │ Faut-il essayer de détecter automatiquement votre carte vidéo ?           │
 │                                                                           │
 │                    <Oui>                       <Non>                      │
 │                                                                           │
 └───────────────────────────────────────────────────────────────────────────┘

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.

  • Exemple 2, une liste :
Outil de configuration des paquets

 ┌─────────────────────┤ Configuration de xserver-xorg ├─────────────────────┐
 │ Pour que l'interface graphique utilisateur du système X Window            │
 │ fonctionne convenablement, il est nécessaire de choisir un pilote de      │
 │ carte graphique pour le serveur X.                                        │
 │                                                                           │
 │ Les pilotes sont en général nommés d'après le nom du fabricant de la      │
 │ carte vidéo ou du circuit graphique ; le nom peut aussi faire référence   │
 │ à un modèle particulier ou à toute une famille de circuits.               │
 │                                                                           │
 │ Pilote de serveur X :                                                     │
 │                                                                           │
 │                              ark              ↑                           │
 │                              ati              ▮                           │
 │                              chips            ▒                           │
 │                              cirrus           ↓                           │
 │                                                                           │
 │                                                                           │
 │                                  <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…
Outil de configuration des paquets

 ┌─────────────────────┤ Configuration de xserver-xorg ├─────────────────────┐
 │ Il est conseillé de ne conserver que les résolutions utiles. Les          │
 │ supprimer toutes a le même effet que n'en supprimer aucune : le serveur   │
 │ X tentera dans tous les cas d'utiliser la résolution la plus haute        │
 │ possible.                                                                 │
 │                                                                           │
 │ Modes vidéo utilisés par le serveur X :                                   │
 │                                                                           │
 │    [ ] 1920x1440                                                      ↑   │
 │    [ ] 1920x1200                                                      ▮   │
 │    [ ] 1856x1392                                                      ▒   │
 │    [ ] 1792x1344                                                      ▒   │
 │    [*] 1680x1050                                                      ▒   │
 │    [ ] 1600x1200                                                      ▒   │
 │    [*] 1440x900                                                       ↓   │
 │                                                                           │
 │                                                                           │
 │                                  <Ok>                                     │
 │                                                                           │
 └───────────────────────────────────────────────────────────────────────────┘

là vous devez choisir plusieurs choses, déplacez-vous sur un choix avec Haut et Bas, et faites Espace sur une case à cocher, ([*] Coché, [ ] décoché), une fois que tout ce que vous voulez cocher est coché, faites Tab et une fois arrivé sur Ok, faites Entrer

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".

Quand les commandes me répondent…

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 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 seulement signaler 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 peux ê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 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: en gros un programme retourne une erreur. echo $? retournera donc 1. Si vous retapez à nouveau echo $?, l'information retournée sera 0, car en effet l'echo retournant précédemment une erreur c'est lui même parfaitement bien déroulé !

Comment savoir à quoi sert une commande ?

Pour connaître les principales commandes, voir cette page : Utilisez une console, quelques exemples de commandes.

Quels sont tous les programmes utilisant la ligne de commande ?

Vous pouvez voir la liste des applications console si vous voulez satisfaire votre curiosité en matière de commandes. Vous verrez que les logiciels y fonctionnant exclusivement ou ayant une version sans GUI y sont nombreux !

L'historique des commandes

Pour ré exécuter une commande déjà effectuée, au lieu de tout retaper, il vous suffit simplement d'appuyer sur la touche ↑ (flèche haut) pour accéder à la commande précédente.

Vous pouvez appuyer plusieurs fois sur ↑ pour aller plus loin dans l'historique ou taper la commande

history

Cette commande liste les 500 dernières commandes plus celles de la session actuelle. Elle retourne quelque chose de ce type :

(489 lignes masquées...)
  490  eject /dev/sr0
  491  history 
  492  sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get clean && sudo apt-get autoremove
  493  mount
  494  sudo mount /data/Véronique/
  495  cat /etc/exports 
  496  ls -l /data/
  497  touch /data/essai-Michel
  498  ls -l /data/
  499  ping -c 3 asus
  500  mount
  501  history 

Si vous souhaiter relancer la commande numéro 492, au lieu de la retaper, il suffit de lancer cette commande :

!492

Vous pouvez également rechercher une commande précédemment tapée via le raccourci <ctrl>+R. Tapez 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 

Vous pouvez alors appuyer à nouveau sur <ctrl>+R afin de sélectionner un résultat plus ancien. Enfin, tapez ENTER pour valider, ou <ctrl>+C pour annuler. Il est également possible de vider cet historique en utilisant la commande suivante

 history -c

Du fun pour le terminal de geek

  • Regarder un remake de star wars un nouvel espoir en ascii :
telnet towel.blinkenlights.nl
  • Chatter avec un Bot :
telnet the-funk.net 7000 

Les petits fun laissés par les développeurs : (appelé easter egg)

  • SUPER COW POWERS
aptitude -h

Read the last line

apt-get moo

aptitude moo

aptitude -v moo

aptitude -v -v moo

aptitude -v -v -v moo

aptitude -v -v -v -v moo

aptitude -v -v -v -v -v moo

aptitude -v -v -v -v -v -v moo

apt-get moo
 tar -cvf toto/
 checking for beer in -lfridge... no
 zgrep "The.*Release" /usr/share/doc/dpkg/changelog.Debian.gz
  • Avoir un fond d'écran matrix dans la console avec cmatrix.

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…

Pour en savoir plus sur la console, voir cette page : console.

Personnaliser son terminal

Configurer les raccourcis clavier

Lancer un Terminal, dans Édition → Raccourcis clavier, puis changer les raccourcis comme vous le souhaitez.

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.

Configurer l'interface

Pour Karmic 1) :

  • Aller dans Édition → Préférence du profil.

Les couleurs

  • Mettre les palettes prédéfinie sur Custom, 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.

L'arrière-plan

  • Nous conseillons par exemple de mettre la transparence (ombrage transparent) vers la droite (soit environ 8/10ème, 80 % de transparence). Vous pourrez ainsi garder un œil sur ce qui se passe derrière le Terminal.

Un terminal sur le bureau

Beaucoup de personnes souhaitent avoir un terminal disponible sur le bureau, voilà l'astuce.

Installation

Tout d'abord il faut installer les paquets xfce4-terminal et 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

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).

A présent, il faut paramétrer devilspie. Pour cela, il faut créer un dossier .devilspie dans le dossier utilisateur, et y créer un fichier intitulé : xfce4-terminal.ds.

mkdir ~/.devilspie
gedit ~/.devilspie/xfce4-terminal.ds

Il faut créer la règle qui paramètre xfce4-terminal:

(if (is (window_class) "Xfce4-terminal") 
(begin 
(below)
(skip_tasklist)
(skip_pager)
(wintype "dock")
))
  • 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 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)

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

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.

Pages concernant le terminal

Voir aussi

1) Pour une autre version que Karmic, Édition → Profils, puis cliquez sur le bouton Modifier le profil par défaut
2) N'oubliez pas la commande man pour connaitre les autres commandes.

terminal.txt · Dernière modification: Le 08/09/2010, 08:29 par Gemnoc
Le contenu de ce wiki est sous licence : CC BY-SA v3.0