Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Officiels > Systèmes alternatifs > Reprenez le contrôle avec Linux ! > Manipuler la console et les fichiers > Nano, l'éditeur de texte du débutant > Lecture du tutoriel

Nano, l'éditeur de texte du débutant

Avatar
Auteur : M@teo21
Note : 19 / 20 (9 votes)
Visualisations : 48 260

Plus d'informations Plus d'informations
Nous avons découvert plusieurs façons de voir le contenu d'un fichier en console.
Mais... aucune des commandes que nous avons étudiées ne nous permettait d'éditer un fichier.

Pourquoi est-ce que j'ai repoussé le moment où je vous parlerais des éditeurs de texte ? Parce que c'est un des domaines les plus riches de la console ! Parmi les plus célèbres éditeurs de texte console de Linux, on compte :


Que de jolis noms n'est-ce pas ? ^^
Des 3 que j'ai cités là, nano est de loin le plus simple à utiliser. Ce n'est pas pour rien si ce chapitre s'intitule "Nano, l'éditeur de texte du débutant". Tout un chapitre pour découvrir nano ne sera pas de trop.

Quant à vi (prononcez "vie aille") et emacs (prononcez "i mackse"), ils sont tous les deux très riches et très complets. En fait, ce sont très probablement les éditeurs de texte les plus complets et puissants qui existent au monde. Et ils sont en console eh oui.
Nous découvrirons vi plus tard dans ce cours. Quant à emacs, je ne le connais pas suffisamment bien moi-même pour me permettre d'en parler, je préfère donc ne pas en parler pour le moment plutôt que mal en parler ;)
Sommaire du chapitre :
Icône du chapitre
Chapitre précédent Sommaire Chapitre suivant

Premiers pas avec nano

En sciences, le terme "nano" représente une toute petite unité. Par exemple, un atome a une taille d'environ un nanomètre.

Si l'éditeur de texte que je vais vous présenter s'appelle nano, c'est parce qu'il est tout petit. Il s'agit d'un programme très simple comparé à vi et emacs. Il nous conviendra tout à fait pour démarrer. Il possède assez peu de fonctions par rapport à vi et emacs (qui peuvent devenir de véritables machines de guerre), mais suffisamment pour commencer à vous débrouiller avec un éditeur de texte.


nano est un éditeur de texte, pas un traitement de texte !



Savez-vous vraiment ce qu'est un éditeur de texte ? Ne le confondez-vous pas avec un traitement de texte ?

Un éditeur de texte est un programme qui permet de modifier des fichiers de texte brut, sans mise en forme (gras, italique, souligné...). Sous Windows, on dispose d'un éditeur de texte très basique : le Bloc-Notes. Sous Linux, on a le choix entre nano, vi, emacs (et bien d'autres), sachant qu'au moins un de ceux-là est installé par défaut sur la plupart des distributions Linux.

Un traitement de texte est fait pour rédiger des documents mis en forme. Sous Windows, Word est le plus célèbre traitement de texte. Sous Linux, on possède l'équivalent : Open Office Writer. Ces programmes ne peuvent être utilisés qu'en mode graphique, car on ne peut pas vraiment faire de la mise en forme dans une console.


Quand a-t-on besoin d'un éditeur de texte ?

A chaque fois que vous devez éditer un fichier de texte brut. Sous Windows, vous avez l'habitude de voir des fichiers de texte brut au format .txt. Sous Linux, vous savez que l'extension importe peu (on peut trouver des fichiers en texte brut sans extension).

Les éditeurs de texte sont parfaits pour les programmeurs en particulier : ils permettent d'éditer des fichiers .c, .cpp, .h, .rb, .py (en fonction de votre langage de programmation).
Même si vous ne programmez pas, vous aurez besoin d'utiliser un éditeur de texte pour modifier des fichiers de configuration. Ces fichiers n'ont pas d'extension particulière, mais vous apprendrez à les reconnaître à force.

Après avoir appris à utiliser nano, nous nous ferons les dents sur nos premiers fichiers de configuration : le nanorc et le bashrc. Ce sera l'occasion pour vous de personnaliser votre nano et votre console ;)


Découverte de nano



Le nom complet de nano est "GNU nano", en référence au projet GNU dont je vous ai parlé dans le tout premier chapitre. Il s'agit d'un éditeur qui s'inspire de "pico", un éditeur de texte plus ancien qui se voulait lui aussi très simple d'utilisation.

Voici le logo de GNU nano, tiré du site officiel :

Code : Console
.
 
                            The                   
     iLE88Dj.  :jD88888Dj:                                           
   .LGitE888D.f8GjjjL8888E;        .d8888b.  888b    888 888     888 
   iE   :8888Et.     .G8888.      d88P  Y88b 8888b   888 888     888 
   ;i    E888,        ,8888,      888    888 88888b  888 888     888 
         D888,        :8888:      888        888Y88b 888 888     888 
         D888,        :8888:      888  88888 888 Y88b888 888     888 
         D888,        :8888:      888    888 888  Y88888 888     888 
         D888,        :8888:      Y88b  d88P 888   Y8888 Y88b. .d88P 
         888W,        :8888:       "Y8888P88 888    Y888  "Y88888P"  
         W88W,        :8888:                                         
         W88W:        :8888:      88888b.   8888b.  88888b.   .d88b. 
         DGGD:        :8888:      888 "88b     "88b 888 "88b d88""88b
                      :8888:      888  888 .d888888 888  888 888  888
                      :W888:      888  888 888  888 888  888 Y88..88P
                      :8888:      888  888 "Y888888 888  888  "Y88P" 
                       E888i                                         
                       tW88D


Vous verrez souvent que les programmeurs sont friands d'images ASCII, c'est-à-dire d'images réalisées à partir de texte. Oui je sais ils sont fous ces programmeurs ^^

Bon, si on démarrait nano ?
Pour ce faire, c'est très simple, il vous suffit de taper nano dans la console :

Code : Console
nano


L'éditeur nano s'ouvre immédiatement :

nano


(Nota : je suis obligé de prendre des captures d'écran car la disposition de la console est particulière, c'est en quelque sorte un programme "semi-graphique")
(Nota bis : j'ai configuré ma console pour qu'elle s'affiche en vert sur noir, je trouve ça plus lisible, mais la couleur importe peu bien entendu)


Dès lors, vous pouvez commencer à taper du texte. Par exemple :

nano


C'est aussi simple que cela !
Ne rigolez pas, je précise qu'il "suffit de taper du texte" car ce n'est pas aussi simple sous d'autres éditeurs de texte comme "vi" ;)


Les raccourcis clavier de nano



En bas de votre écran, vous pouvez voir un espace d'aide. Que signifie-t-il exactement ?
Il s'agit d'un aide-mémoire pour vous rappeler à tout moment les commandes principales que vous pouvez lancer sous nano.

Aide de nano


Le symbole ^ signifie "Ctrl" (la touche Contrôle de votre clavier). Ainsi, pour quitter nano il suffit de taper Ctrl + X.

Voici les raccourcis les plus importants :


Vous pouvez vous déplacer dans le fichier avec les flèches du clavier ainsi qu'avec les touches "Page Up" et "Page Down" pour avancer de page en page (les raccourcis Ctrl + Y et Ctrl + V fonctionnent aussi).

Si l'aide-mémoire vous encombre, vous pouvez gagner de la place en appuyant sur Echap puis sur X. Vous pouvez le réafficher avec la même suite de touches.

La recherche



La combinaison de touches Ctrl + W lance une recherche dans le fichier :

Recherche dans nano


Il vous suffit d'écrire le mot que vous recherchez...

Recherche dans nano


... puis de taper Entrée :

Recherche dans nano


Le curseur est automatiquement positionné à la première occurence trouvée. Si le curseur est à la fin, la recherche recommence du début.

Si vous voulez sortir du mode recherche, tapez Ctrl + C (Annuler)


Si vous voulez aller au résultat suivant (au "deux" suivant), refaites Ctrl + W pour lancer une recherche. La recherche précédente est sauvegardée et apparaît entre crochets. Si vous voulez rechercher le même mot (et donc aller au résultat suivant), tapez juste Entrée sans écrire de mot à rechercher :

Recherche dans nano


Enregistrer et quitter



Pour enregistrer à tout moment, faites Ctrl + O.
Si vous essayez de quitter (Ctrl + X) sans enregistrer auparavant, un message vous demandera si vous voulez enregistrer :

Confirmation de sortie de nano


Si vous appuyez sur la touche "o", vous passerez en mode enregistrement.
Si vous appuyez sur la touche "n", nano quittera sans enregistrer.
Si vous faites la combinaison "Ctrl + C", vous annulerez votre demande de sortie de nano. Vous ne quitterez donc pas nano.

En appuyant sur "o", vous vous retrouvez en mode enregistrement. Tapez juste le nom du fichier que vous voulez créer, puis faites Entrée :

Enregistrement dans nano


Après ça, nano sera fermé et vous retrouverez votre bonne vieille ligne de commande ;)


Les paramètres de la commande nano



Lorsque vous appelez nano dans la ligne de commande, vous pouvez spécifier plusieurs paramètres. Le plus courant est d'indiquer en paramètre le nom du fichier qu'on veut ouvrir :

Code : Console
nano salut.txt


... ouvrira le fichier salut.txt qu'on vient de créer.

Si le fichier n'existe pas, il sera automatiquement créé par nano lors du premier enregistrement.

A part ça, la commande nano accepte de nombreux paramètres. J'en ai sélectionné 3 pour vous qui me semble parmi les plus utiles :



Si je veux lancer nano avec toutes ces options à la fois, je peux donc écrire :

Code : Console
nano -miA salut.txt

Configurer nano avec .nanorc

Vous savez maintenant utiliser nano. Comme vous avez pu le voir, ce n'est pas très compliqué. Il suffit d'apprendre un peu les raccourcis clavier les plus utiles, et on peut rapidement s'en servir.

Justement... si on utilisait nano pour quelque chose d'utile ? Non parce que bon, le fichier "salut.txt" c'est mignon, mais ça va pas nous faire avancer ;)

Alors pour l'occasion, je me suis dit que j'allais vous faire éditer quelques fichiers de configuration. Par exemple, il existe un fichier de configuration de nano qui indique toutes vos préférences. Celui-ci s'appelle ".nanorc".


Pourquoi .nanorc ?



La plupart des fichiers de configuration commencent par un point. Cela permet de "cacher" le fichier quand on fait un "ls". Bien entendu, comme vous devriez le savoir maintenant, les fichiers cachés peuvent toujours être affichés en utilisant le paramètre -a : ls -a.

Chaque utilisateur de la machine peut créer son propre fichier de configuration .nanorc dans son répertoire personnel (home). Chez moi, ce fichier doit être placé à la position : /home/mateo21/.nanorc. Ce fichier est lu par nano à chaque fois que vous le démarrez.

Je viens de regarder la liste des fichiers de mon home, mais même en incluant les fichiers cachés avec -a je ne vois pas de fichier appelé .nanorc !


En effet, il se peut que ce fichier n'existe pas chez vous. Si le fichier .nanorc n'existe pas, nano sera chargé avec les options par défaut.

Code : Console
mateo21@mateo21-desktop:~$ ls -a
.                               .gimp-2.4             .nautilus
..                              .gksu.lock            nautilus-debug-log.txt
.armagetron                     .gnome                .openoffice.org2
.armagetronad                   .gnome2               .pgadmin3
.assistant                      .gnome2_private       .pgpass
.bash_history                   .gnome_private        .profile
.bash_logout                    .gstreamer-0.10       Public
.bashrc                         .gtk-bookmarks        .purple
.blender                        .gtkrc-1.2-gnome2     .putty
.cache                          .gweled               .qt
.config                         .ICEauthority         .recently-used
.DCOPserver_mateo21-desktop__0  .icons                .recently-used.xbel
.DCOPserver_mateo21-desktop_:0  images                salut.txt
.designer                       Images                .ssh
Desktop                         .inkscape             .sudo_as_admin_successful
.dmrc                           .java                 .themes
Documents                       .jedit                .thumbnails
.emilia                         .kde                  .Trash
.esd_auth                       .lesshst              .tsclient
.evolution                      .lgames               tutos
Examples                        .local                .update-manager-core
.face                           log                   .update-notifier
.fbrc                           .macromedia           Vidéos
.filezilla                      .mcop                 .vlc
.fontconfig                     .mcoprc               .w3m
.gaim                           .metacity             .wine
.gconf                          Modèles               .wormux
.gconfd                         .mozilla              .Xauthority
.geany                          .mozilla-thunderbird  .xine
.gimp-2.2                       Musique               .xsession-errors


Comme vous pouvez le voir, il n'y a pas de .nanorc chez moi !


Création du .nanorc



Pas de .nanorc ? Pas de problème, il suffit de le créer. On peut par exemple faire :

Code : Console
nano .nanorc


Cette commande ouvre nano. Comme le fichier .nanorc n'existe pas, un document vide est ouvert. Le fichier .nanorc sera créé lorsque vous enregistrerez.

nanorc vide
Un .nanorc neuf (et vide)
Notez que le nom du fichier est déjà indiqué en haut de l'écran


Dans ce fichier, vous devez écrire une commande par ligne.
Chaque commande commence par un set (pour activer) ou un unset (pour désactiver) suivi de l'option qui vous intéresse.

Par exemple, pour activer la souris, écrivez :

Code : Console
set mouse


Ainsi, à chaque fois nano sera chargé avec la prise en charge de la souris. Vous n'aurez pas besoin de réécrire systématiquement le paramètre -m qu'on a vu tout à l'heure ;)

On peut faire de même pour éviter d'avoir à réécrire les paramètres -i et -A à chaque fois avec d'autres séries de set. Au final, on écrira ceci :

Code : Console
set mouse
set autoindent
set smarthome


Enregistrez le fichier avec Ctrl + O. Le nom du fichier est automatiquement écrit pour vous (car on l'a donné en paramètre en ouvrant nano) :

Enregistrement du .nanorc


Vous pouvez ensuite faire Ctrl + X pour quitter nano.
Je vous rappelle que pour que ces options soient prises en compte, il faut démarrer une nouvelle session de nano (c'est pour ça que la souris n'a pas automatiquement marché dès que vous avez enregistré le fichier).

Si vous relancez nano ensuite, vous pouvez constater que la souris fonctionne, et que les options d'indentation automatique et de retour à la ligne intelligent fonctionnent elles aussi :)


Le nanorc global et la coloration syntaxique



Ce fichier .nanorc dans votre home est très pratique, car il vous permet de définir vos propres options. Mais si vous avez 10 utilisateurs sur votre machine et que vous voulez activer le support de la souris pour tout le monde, vous n'allez quand même pas créer 10 fichiers .nanorc pour chacun !

Il existe un fichier nanorc "global" qui est pris en compte pour tout le monde. Celui-ci est situé dans /etc/nanorc (attention il n'y a pas de point devant cette fois).
Ce fichier ne peut être modifié que par root. Je vous conseille donc de l'ouvrir avec un sudo (ou dans une console en root si vous avez fait sudo su avant) :

Code : Console
sudo nano /etc/nanorc


Normalement, ce fichier existe déjà. Comme vous pouvez le constater, il est bien rempli :

Le fichier /etc/nanorc


Il sert en fait de fichier d'exemple. Toutes les options disponibles dans un nanorc sont présentes, mais elles sont précédées d'un # qui signifie qu'il s'agit d'un commentaire. Les commentaires sont ignorés par nano.

Le début du fichier vous explique (en anglais) que c'est un fichier d'initialisation d'exemple de nano.

Après le petit blabla d'introduction, vous avez la liste des options disponibles. Toutes sont commentées.
La première est autoindent.

Code : Console
# set autoindent


Supprimez juste le # pour décommenter la ligne et donc pour activer l'indentation automatique pour tous les utilisateurs.

Code : Console
set autoindent


Vous pouvez parcourir le fichier à la recherche d'options intéressantes que vous voulez activer.

Vers la fin, vous verrez une section appelée "color setup", qui commence par ces lignes-là :

Code : Console
## Nanorc files
# include "/usr/share/nano/nanorc.nanorc"
 
## C/C++
# include "/usr/share/nano/c.nanorc"
 
## HTML
# include "/usr/share/nano/html.nanorc"


Je vous invite à décommenter toutes les lignes d'include. Cela permettra d'activer la coloration "intelligente" de vos fichiers selon leur type. Vous pourrez ainsi avoir des fichiers HTML colorés, des fichiers C colorés, des fichiers nanorc colorés, etc. ;)

Enregistrez le fichier, puis quittez nano.

Si vous avez une erreur à l'enregistrement, cela signifie que vous n'avez pas ouvert le fichier en root. Seul root a le droit de modifier ce fichier. Fermez nano et relancez-le avec un sudo cette fois.


Relancez nano en ouvrant par exemple un fichier HTML :

Nano en couleurs
Les fichiers HTML sont maintenant automatiquement colorés


Les balises sont en bleu, le texte dans la couleur par défaut (en vert chez moi).

Même le fichier /etc/nanorc est maintenant coloré de manière intelligente :

Nano en couleurs
Une coloration spéciale... pour les fichiers nanorc !


Nano se base sur l'extension du fichier pour activer la coloration syntaxique spéciale pour ce type de fichier.

Bon, honnêtement la coloration de nano n'est pas très performante (comparée à celle de "vi" par exemple), mais on s'en contentera pour le moment ;)


Personnaliser la coloration syntaxique



Vous pouvez, si vous le désirez, modifier les couleurs de la coloration syntaxique.
Rendez-vous dans le dossier /usr/share/nano. Vous y trouverez plusieurs fichiers nanorc, un par langage.

Vous pouvez par exemple ouvrir celui du langage HTML et l'éditer (attention il faut être root là encore).

Edition de la coloration syntaxique


La première ligne, qui commence par "syntax", indique les extensions de fichiers qui déclencheront la coloration HTML. Pour ma part j'ai défini "html", "htm" et "tpl". Vous pouvez en ajouter si vous le désirez, il suffit de séparer chaque extension par une barre verticale "|" (Alt Gr + 6 sur un clavier français).

Ensuite... Il faut savoir utiliser les expressions régulières pour paramétrer les éléments que vous voulez colorer. Je ne vais pas vous faire un cours là-dessus ici, ce serait un peu long ;) J'en ai parlé dans le tuto PHP pour ceux que ça intéresse.

Pour les couleurs, vous pouvez indiquer des noms de couleur en anglais : red, blue, green, black, white... Vous pouvez rajouter le mot "bright" devant pour utiliser une couleur plus claire : "brightgreen" signifie donc "vert clair".


Voilà, avec ça vous pouvez déjà commencer à personnaliser un peu mieux votre nano ! :)

Configurer sa console avec .bashrc

Tout comme il existe un fichier de configuration de nano, il existe un fichier de configuration de l'ensemble de la console : le .bashrc. Il se situe dans votre répertoire personnel et celui-ci existe déjà normalement.

Code : Console
mateo21@mateo21-desktop:/usr/share/nano$ cd
mateo21@mateo21-desktop:~$ nano .bashrc


Bon, nano ne colore pas ce fichier et c'est dommage. Il faudrait paramétrer un peu plus finement la coloration syntaxique mais on ne va pas s'attarder à ça pour le moment (vous aurez tout le loisir de le faire à la fin du tuto si vous vous ennuyez).

Edition du .bashrc personnel



Le fichier .bashrc est un peu complexe pour les simples mortels que nous sommes (pour le moment :ange: ), donc attention à ne pas éditer n'importe quoi au risque de tout casser.
Bref, faites juste un peu attention et tout ira bien.


Nous n'allons pas nous intéresser au .bashrc dans le détail ligne par ligne. Nous allons seulement voir quelques lignes faciles à éditer qui vous permettent de personnaliser un peu votre console.


Personnaliser l'invite de commande



Le fichier .bashrc vous permet entre autres choses de personnaliser l'invite de commandes. Vous savez, ce petit message qui s'affiche devant votre curseur dans la console :

Code : Console
mateo21@mateo21-desktop:~$


Rendez-vous plus bas dans le fichier, jusqu'à tomber sur ces lignes :

Code : Console
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
    ;;
*)
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac
 
# Comment in the above and uncomment this below for a color prompt
# PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '



Dans les commentaires, on vous dit que vous pouvez activer l'invite de commande colorée en commentant les lignes du dessus et en décommentant la dernière ligne.
Rajoutez donc un # devant les 2 premiers PS1, et enlevez le # devant le dernier PS1 pour que la coloration de l'invite de commande puisse fonctionner :


Code : Console
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
#    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
    ;;
*)
#    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac
 
# Comment in the above and uncomment this below for a color prompt
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '


Enregistrez.
Il faudra ouvrir une nouvelle console pour que la modification soit prise en compte. Admirez :)

Invite de commandes coloré


Si vous êtes en forme, vous pouvez vous éditer la ligne que vous venez de décommenter :

Code : Console
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '


C'est en fait elle qui indique ce que l'invite de commande doit afficher. Les séquences de type "\033" servent à paramétrer la couleur (c'est pas simple, je vous l'accorde :D ).
Le symbole \u au milieu indique le nom de l'utilisateur (mateo21 par exemple) et \h indique le nom de la machine hôte (mateo21-desktop). Vous pouvez repérer dans cette ligne le @ qui sépare les deux, le ":", le "$", etc.

Vous pouvez essayer de personnaliser un peu ces éléments et leur ordre si ça vous amuse, mais faites quand même attention à ne pas mettre le bordel là-dedans hein :p


Créer des alias



Les alias sont des commandes que vous créez qui sont automatiquement transformées en d'autres commandes.
Descendez un peu plus bas dans le fichier, vous trouverez des lignes commentées commençant par "alias".

Je vous invite à les personnaliser comme moi pour commencer :

Code : Console
# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
    eval "`dircolors -b`"
    alias ls='ls --color=auto'
    #alias dir='ls --color=auto --format=vertical'
    #alias vdir='ls --color=auto --format=long'
fi
 
 
# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'


Vous avez déjà probablement un alias créé :

Code : Console
alias ls='ls --color=auto'


Celui-ci active la coloration des résultats d'un ls à chaque fois que vous tapez ls. En fait, ls est transformé par la console en "ls --color=auto" automatiquement à chaque fois. C'est quand même plus rapide que de réécrire ces paramètres tout le temps :p

Il y a un autre alias que j'ai l'habitude d'utiliser, c'est "ll" (deux fois la lettre L minuscule). Cela permet de faire un ls en mode détaillé.
Personnellement, j'ai un peu complété l'alias pour utiliser plus d'options à la fois, comme j'en ai parlé dans le chapitre sur ls :

Code : Console
alias ll='ls -lArth'


... signifie que la commande "ll" fera appel à ls avec les options qui permettent d'afficher le détail de chaque fichier, d'afficher les fichiers cachés, d'afficher les fichiers dans l'ordre inverse de dernière modification (le fichier le plus récent sera en bas) et d'afficher des tailles de fichiers lisibles pour un humain (-h).

La commande ls appellera automatiquement l'alias "ls --color=auto", ce qui fait qu'un "ll" sera aussi coloré. Bref, c'est un peu un alias en chaîne ;)

Si vous tapez la commande "alias" dans la console, vous verrez la liste de tous les alias définis pour votre utilisateur.



Vous pouvez définir vos propres alias vous aussi, comme vous pouvez le voir c'est très simple. Cela fonctionne sur le modèle :

Code : Console
alias nom='commande'


Attention à ne pas mettre d'espace autour du symbole "=".

On peut par exemple en profiter pour sécuriser un peu nos rm pour éviter qu'on puisse supprimer tout le système depuis la racine /. Il y a en effet un paramètre de sécurité disponible avec rm : --preserve-root. Mais ce serait un peu long de l'écrire à chaque fois, et surtout on risquerait d'oublier. En définissant un alias sur rm, vous ne pourrez pas oublier comme ça :

Code : Console
alias rm='rm --preserve-root'


Ne testez pas l'efficacité de cette commande en faisant un rm -rf / en root ! En effet, il faut relancer une console pour que les modifications soient prises en compte, et si vous avez fait une faute de frappe dans votre alias vous ne serez pas protégé... mais pendant ce temps votre système sera détruit lui !
Bref, même pour "vérifier", ne vous amusez pas à balancer le rm de la mort...



Edition du bashrc global



Si vous voulez définir des alias ou modifier l'invite de commandes pour tous vos utilisateurs, vous pouvez le faire en une seule fois en éditant le fichier bashrc global situé dans : /etc/bash.bashrc
Ce bashrc doit être édité en root.

Ce fichier propose un peu moins d'exemples commentés que celui présent dans votre home. Vous pouvez y copier vos alias et la ligne définissant l'invite de commandes (commençant par PS1).

Les éléments du bashrc personnel ont la priorité sur ceux du bashrc global. Si un même alias est défini dans les deux, c'est celui du bashrc personnel qui sera pris en compte.



Et aussi... le .profile



De même qu'il existe un ~/.bashrc et un /etc/bash.bashrc, il existe un ~/.profile et /etc/profile. Quelle est la différence ?

En gros, le .profile est lu à chaque nouvelle console dans laquelle vous vous loggez (vous rentrez votre login / mot de passe). C'est le cas des consoles que vous ouvrez avec Ctrl + Alt + F1 à F6 (tty1 à tty6).
Le .bashrc est lu lorsque vous ouvrez une console dans laquelle vous ne vous loggez pas. C'est le cas des consoles que vous ouvrez en mode graphique (Terminal sous Gnome, Konsole sous KDE).

C'est un peu compliqué pour pas grand chose au final. Dans la pratique, le .profile fait par défaut appel au .bashrc... Donc il suffit d'éditer votre .bashrc, et vous modifierez ainsi les options de toutes vos consoles : celles avec et sans login. Voilà pourquoi je vous ai fait éditer dès le début le .bashrc ;)

Résumons ça dans un schéma pour bien comprendre comment ça fonctionne :

Schéma profile et bashrc


Le shell est le programme qui interprète les commandes que vous tapez (vous pouvez considérer que c'est un synonyme de "console").

On a, sur ce schéma, 2 types de shells possibles :

La particularité, comme le montre le schéma, c'est que le .profile fait appel au .bashrc... ce qui signifie que vous pouvez faire toutes vos configurations dans le .bashrc pour qu'elles soient valables quel que soit le type de shell que vous ouvrez ;)

Q.C.M.

Lequel de ces programmes n'est pas un éditeur de texte de Linux ?
Comment quitte-t-on nano ?
Quelle combinaison de touches permet de lancer une recherche sous nano ?
Quel symbole est utilisé pour indiquer qu'une ligne est un commentaire dans les fichiers de configuration .nanorc et .bashrc ?
Je souhaite définir un alias "config" qui ouvre mon .bashrc avec nano quel que soit le répertoire dans lequel je me trouve. Quelle ligne dois-je ajouter à mon .bashrc ?

Statistiques de réponses au QCM


Eh ben voilà, vous maîtrisez maintenant nano ! Avouez que c'était pas bien dur camarades :pirate:

Nano est vraiment un tout petit programme et on en fait vite le tour. Il n'en sera pas de même pour "vi" qui est vraiment riche en fonctionnalités, mais qu'on verra bien plus tard (nous ne sommes pas pressés, et nous avons beaucoup d'autres choses à découvrir avant).

On aura en particulier profité de ce chapitre pour éditer nos premiers fichiers de configuration : .nanorc et .bashrc. Vous serez très probablement amenés à éditer beaucoup d'autres fichiers de configuration à l'avenir. Vous verrez que le format de ces fichiers est en général semblable mais il peut y avoir parfois quelques différences de l'un à l'autre : attention donc à la syntaxe.


Bon ben... Quand vous aurez fini de faire joujou avec les alias et les couleurs, on pourra passer au chapitre suivant :p
Chapitre précédent Sommaire Chapitre suivant
Retour en haut Retour en haut


Créé : le 08/06/2006 à 19:20:01
Modifié : le 17/11/2008 à 10:51:06
Avancement : 100%
Licence : Copie non autorisée

24 commentaires

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 88 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0442s (0.0283s)