Contexte
Durée : 2h
Environnement de travail : Terminal Linux
Pré-requis : Aucun
Lorsque l'on utilise un ordinateur, on manipule souvent des fichiers. Linux ne fait pas exception, et nous allons voir qu'il existe de nombreux outils en ligne de commande qui permettent de créer, consulter, modifier, et organiser les fichiers et dossiers de l'ordinateur. Nous allons d'abord voir comment ils sont gérés et organisés, puis nous verrons les outils pour les manipuler.
Fonctionnement des fichiers
Objectifs
Comprendre l'organisation en fichiers sur Linux
Connaître les premières commandes pour naviguer dans les dossiers
Syntaxe : Lister les fichiers : ls
La commande ls
permet de lister les fichiers et dossiers de l'endroit où l'on se trouve dans son terminal. Par défaut, lorsque l'on ouvre la console, on se trouve dans son dossier d'utilisateur. Si on fait un ls
on voit donc les fichiers et dossiers classiques de ce répertoire.
kyane@europa:~$ ls
Documents Images Musique Téléchargements Vidéos
Rappel :
On peut utiliser l'option -p
ou -F
pour visualiser les dossiers
kyane@europa:~$ ls -p
Documents/ Images/ Musique/ Téléchargements/ Vidéos/ firefox.config
Syntaxe : Naviguer dans le terminal : cd
Si l'on souhaite se rendre dans le dossier Documents
on utiliser la commande cd
(change directory, changer de dossier) suivi du nom du dossier dans lequel on veut se rendre.
kyane@europa:~$ cd Documents
kyane@europa:~/Documents$ ls
Boulot Etudes Finances Logement Picasoft
On constate que le prompt est à jour et que l'on est dans le dossier ~/Documents
.
Fondamental : Séparateur
Sous Linux le caractère de séparation de dossier est /
. Ainsi le fichier /home/kyane/firefox.config
est le fichier nommé firefox.config
se trouvant dans le dossier kyane
qui est lui-même dans le dossier home
.
Syntaxe : Fichiers cachés : ls -a
Tout les fichiers dont le nom commence par un ".
" sont des fichiers cachés : ils ne s'affichent pas par défaut lorsque qu'on utilise la commande ls
.
C'est utile pour des fichiers de configuration qui ne sont pas souvent modifiés, pour ne pas "polluer" l'interface avec pleins de fichiers de ce type que l'on ne souhaite pas voir.
Pour lister les fichiers cachés, on utilise l'option -a
.
kyane@europa:~$ls -a
. .. .bash_logout .bashrc Documents Images Musique .profile Téléchargements Vidéos firefox.config
On voit ici les fichiers .bash_rc
et .profile
qui sont des fichiers cachés du répertoire utilisateur (en l’occurrence qui servent à configurer certains éléments du terminal).
Remarque : Raccourcis : . et ..
On constate que la commande ls -a
retourne systématiquement deux dossiers nommés ".
" et "..
".
kyane@europa:~/Documents$ ls -a
. .. Boulot Etudes Finances Logement Picasoft
Ce sont des raccourcis pour désigner :
le dossier courant dans le cas de
.
le dossier parents dans le cas de
..
Par exemple cela nous permet de retourner facilement au dossier parent.
kyane@europa:~$ cd Documents
kyane@europa:~/Documents$ cd ..
kyane@europa:~$
Remarque : Dossier utilisateur : ~
Le dossier de base de l'utilisateur (on parle de home directory) est désigné par le caractère "~
". Par écrire ~/firefox.config
est équivalent à écrire /home/kyane/firefox.config
, "~
" remplace le nom complet de mon dossier utilisateur, à savoir /home/kyane
.
À retenir
Sous Linux le chemin des fichiers utilise le caractère "/
" pour séparer les noms de dossier, et les fichiers ayant un ".
" en début de nom sont considérés comme cachés.
Naviguer avec un terminal est très simple en utilisant la commande cd
et en s'appuyant sur des raccourcis comme ".
", "..
" et "~
".
Appliquer la notion
Sur votre machine, rendez vous dans le dossier nommé log
qui se trouve lui-même dans le dossier nommé /var
.
On utilise la commande cd
kyane@europa:~$ cd /var/log/
Une fois dans le dossier en question, listez les fichiers qui s'y trouve. Les dossier doivent être facilement identifiables.
L'option -p
ou -F
de ls
devrait aider.
kyane@europa:/var/log$ ls -F
alternatives.log apache2/ btmp debug mail.err auth.log dpkg.log lastlog messages syslog
Bien entendu les fichiers affichés peuvent varier en fonction de la machine.
Arborescence des fichiers
Objectifs
Savoir ce qu'est la racine
Savoir faire la différence entre un chemin relatif et absolu
Comprendre l'arborescence classique sous Linux
Définition : La racine
La racine dans un système de fichier est le dossier de base qui contient tout les autres dossiers, toute l'arborescence. Le cas de de Linux, la racine est le dossier /
. Il n'y a rien au dessus, aucun dossier ne contient la racine, et tout les fichiers, dossiers et sous-dossiers sont contenus dans /
.
Exemple :
Dans n'importe quel dossier, je peux utiliser la commande pwd
pour connaître l'endroit où je me trouve.
kyane@europa:~$ pwd
/home/kyane
Ici c'est le dossier de l'utilisateur (on le remarque grâce au "~
" dans le prompt), c'est à dire /home/kyane
. Si l'on veut se rendre à la racine, on peut donc remonter 2 dossiers en arrière.
kyane@europa:~$ cd ../..
kyane@europa:/$ pwd
/
kyane@europa:/$ ls
bin dev home lib lib64 media opt root sbin sys usr vmlinuz
boot etc initrd.img lib32 libx32 mnt proc run srv tmp var
Chemin absolu ou relatif
Dans l'exemple précédent on a utilisé cd ../..
pour se rendre à la racine, mais ça ne fonctionne que parce que l'on avait besoin de remonter 2 dossiers en arrière pour atteindre la racine. Si on avait été dans le dossier /var/log/docker
on aurait eu besoin de faire cd ../../..
, ou alors simplement cd /
. Il y a donc 2 manières de se déplacer d'un dossier à l'autre.
Définition : Chemin absolu
Un chemin absolu est un chemin qui permet de désigner un fichier (ou dossier) en fonction de sa localisation par rapport à la racine. On le reconnaît car il commence tout le temps par la caractère "/
", la racine. Par exemple /etc/cron.d
est un chemin absolu : quelque soit le dossier dans lequel je me trouve initialement je peux m'y déplacer en faisant cd /etc/cron.d
.
Définition : Chemin relatif
Un chemin relatif est un chemin qui permet de désigner un fichier (ou dossier) en fonction de sa localisation par rapport au dossier dans lequel on se trouve actuellement. Par exemple cd ../etc/cron.d
permet de se rendre, à l'aide d'un chemin relatif, dans le dossier /etc/cron.d
si l'on se trouve dans le dossier /home
.
L'arborescence Linux
À la racine se trouve une grande quantité de dossiers différents, comme nous avons pu le voir.
kyane@europa:/etc/cron.d$ ls /
bin dev home lib lib64 media opt root sbin sys usr
boot etc lib32 libx32 mnt proc run srv tmp var
Ces dossiers sont souvent les mêmes d'une machine ou d'une distribution à une autre. En effet Linux a tendance à suivre une certaine logique d'organisation des fichiers et sous-dossiers, chaque dossier présent à la racine va contenir des fichiers selon certaines thématiques. Par exemple :
bin
est un dossier qui va contenir beaucoup de programmes et commandes qui peuvent s’exécuter (des fichiersBINaires
donc) ;dev
va contenir des dossiers particuliers qui vont permettre de gérer les périphériques : disque, clef USB, écran, etc ;home
va contenir les dossiers d'utilisateurs. Par exemple/home/kyane
est le dossier d'utilisateur dekyane
, tandis que/home/clement
est celui declement
;var
va contenir tout un tas de données variables : des messages du système (logs), du cache pour certains logiciels, etc.etc
contient la plupart des fichiers de configurations.
Il n'est pas nécessaire de connaître tout les dossiers, mais il est important de savoir qu'il y a une logique d'organisation. Avec l'habitude, cela permettra d'identifier rapidement si un fichier est de la configuration ou un programme, en fonction de là où on le trouve.
À retenir
Sous Linux les fichiers et dossiers sont organisés selon une certaine logique et forment une arborescence. Celle-ci commande à la racine, qui est le dossier parent de tout le système de fichier. Pour désigner un fichier, on utilise son chemin, soit absolu (à partir de la racine), soit relatif (en fonction du dossier courant).
Appliquer la notion
Exécutez la commande cd
sans paramètres, dans quel dossier est-ce que l'on se retrouve ?
On utilise la commande pwd
On se retrouve dans son dossier d'utilisateur.
kyane@europa:/etc/cron.d$ cd
kyane@europa:~$ pwd
/home/kyane
On se rend dans le dossier /var/log
puis on lance la commande cd ../cache/apt/
. Quel est le chemin absolu du dossier dans lequel on se retrouve ?
Le dossier dans lequel on se retrouve est /var/cache/apt
, car on remonte d'un dossier puis on descend dans cache/apt
.
On commence par se positionner dans le dossier de départ.
kyane@europa:~$ cd /var/log
Puis on se rend dans le dossier de destination.
kyane@europa:/var/log$ cd ../cache/apt/
kyane@europa:/var/cache/apt$
On constate dans le prompt (mais on peut utiliser la commande pwd
) que le chemin absolu est bien /var/cache/apt
.
Éditer des fichiers
Objectifs
Savoir créer un fichier ou un dossier
Savoir modifier un fichier texte dans son terminal
Mise en situation
Sous Linux, la quasi-totalité des fichiers de configuration sont de simples fichiers textes. Sur un serveur par exemple, on créé et modifie quotidiennement des fichiers permettant de configurer les différents logiciels de celui-ci. Il est donc particulièrement important de savoir comment faire ceci dans un terminal.
Méthode : Créer un fichier
Créer un fichier est très simple avec la commande touch
.
kyane@europa:~/librecours$ touch roman.txt
kyane@europa:~/librecours$ ls
roman.txt
La commande a bien créé un fichier nommé roman.txt
dans le dossier où je me trouve (en l’occurrence ~/librecours
).
Remarque :
Si on regarde le manuel de la commande touch
, on constate qu'il est indiqué « touch - change file timestamps »
, ce qui veut dire que c'est une commande qui permet de changer la date de modification d'un fichier. On pourrait se demander pourquoi on utilise cette commande pour créer un fichier dans ce cas, mais la suite du manuel nous indique « A FILE argument that does not exist is created empty, unless -c or -h is supplied. »
. Si le fichier n'existe pas, il est donc créé, c'est pour cela que cette commande est celle utilisée pour créer un fichier sous Linux.
Méthode : Créer un dossier
Créer un dossier est tout aussi simple qu'un fichier, on utilise simplement la commande mkdir
.
kyane@europa:~/librecours$ mkdir photos
kyane@europa:~/librecours$ ls -F
photos/ roman.txt
kyane@europa:~/librecours$ cd photos/
kyane@europa:~/librecours/photos$
Il est aussi possible de créer plusieurs dossiers en même temps, en spécifiant plusieurs arguments.
kyane@europa:~/librecours$ mkdir films musiques
Ou encore de créer une arborescence de sous-répertoires d'un seul coup.
kyane@europa:~/librecours$ mkdir -p documents/factures/gaz
Nano, un éditeur de texte en console
Un éditeur de texte est un programme qui permet de modifier des fichiers texte, on connaît par exemple le fameux Bloc-Notes sous Windows. À la différence du traitement de texte, qui est un logiciel qui édite des fichiers aux formats complexes, l'éditeur de texte est très léger, à tel point qu'il en existe de nombreux disponibles directement dans le terminal. Le plus simple pour débuter est sans doute Nano.
Méthode :
Pour lancer l'édition d'un texte avec Nano, il suffit d'utiliser la commande du même nom et de spécifier le fichier.
kyane@europa:~/librecours$ nano roman.txt
Une fenêtre s'ouvre alors dans le terminal, c'est l'éditeur de texte.
Méthode : Écrire du texte
Pour écrire dans notre fichier, rien de plus simple, il suffit de taper au clavier. La touche entrée permet d'aller à la ligne, et les flèches directionnelles de se déplacer dans le texte.
Méthode : Les raccourcis
Pour effectuer les opérations principales (enregistrer le fichier, copier/coller du texte, etc.) Nano s'appuie sur des raccourcis clavier qui sont, en partie, spécifiés en bas de la fenêtre.
Le symbole ^
désigne la touche Ctrl
. Pour enregistrer le fichier on fera donc Ctrl + o
. Nano propose ensuite, en bas de fenêtre, de confirmer le nom du fichier.
De la même manière on peut utiliser Ctrl + x
pour fermer la fenêtre.
À retenir
Les commandes touch
et mkdir
permettent très simplement de créer fichiers et dossier. Les fichiers peuvent ensuite être édités directement en console à l'aide de Nano, qui est un éditeur particulièrement adapté pour débuter, avec son interface minimaliste et ses raccourcis explicitement indiqués dans la fenêtre.
Appliquer la notion
Dans le dossier de votre choix, on souhaite créer des sous-dossiers qui vont contenir des fichiers.
Créez 3 dossiers en utilisant une seule commande
documents
documents/finances
images
L'option -p
de la commande mkdir
devrait permettre de tout faire en une fois.
mkdir -p documents/finances images
Dans le dossier documents
, créez 2 fichiers vides nommés todo.txt
et cv.tex
. Listez ensuite le contenu du dossier pour que l'on fasse la différence entre les dossiers et fichiers.
On créé les 2 fichiers
kyane@europa:~/librecours$ touch documents/todo.txt
kyane@europa:~/librecours$ touch documents/cv.tex
Puis on liste le contenu du dossier.
kyane@europa:~/librecours$ ls -F documents/
cv.tex finances/ todo.txt
Dans un fichier documents/finances/compta.txt
écrivez quelques lignes de texte.
Le texte en lui même n'est pas important, l'essentiel est d'utiliser l'outil Nano correctement.
On utilise Nano pour créer et ouvrir le fichier
kyane@europa:~/librecours$ nano documents/finances/compta.txt
Après avoir écrit quelques lignes, on utilise Ctrl + o
pour enregistrer le fichier, et Ctrl + x
pour quitter Nano
Déplacer des fichiers
Objectifs
Savoir copier un fichier
Savoir déplacer un fichier
Savoir supprimer un fichier
Méthode : Copier un fichier
Pour copier un fichier on utilise la commande cp
(abréviation de copy). Elle prend en paramètre le fichier source puis le fichier (ou dossier) de destination.
kyane@europa:~/librecours$ cp documents/compta-2019.txt archives/
Cette commande va copier le fichier documents/compta-2019.txt
dans le dossier archives
.
kyane@europa:~/librecours$ ls archives/
compta-2019.txt
Méthode : Copier un dossier
Pour copier un dossier on utilise la même commande, mais il est nécessaire d'utiliser le paramètre -r
(pour recursive). Cela permet d'indiquer que l'on souhaite copier le répertoire, mais aussi tout les fichiers et sous-dossiers qu'il contient
kyane@europa:~/librecours$ ls images/
photo.png
kyane@europa:~/librecours$ cp -r images/ archives/
kyane@europa:~/librecours$ ls -F archives/
compta-2019.txt images/
kyane@europa:~/librecours$ ls -F archives/images/
photo.png
Ici tout le dossier images
et son contenu sont copiés dans le dossier archives
.
Méthode : Déplacer un fichier
La commande mv
est utilisée pour déplacer un fichier ou un dossier, et donc indirectement aussi pour les renommer. Elle s'utilise de la même manière que la commande cp
.
mv vieuxfichier nouveaufichier
Par exemple pour déplacer un fichier dans un autre dossier
kyane@europa:~/librecours$ mv roman.txt archives/
Méthode : Supprimer un fichier
Enfin, la commande rm
(abréviation de remove) permet de supprimer un fichier sur la machine.
kyane@europa:~/librecours$ ls archives/
compta-2019.txt images roman.txt
kyane@europa:~/librecours$ rm archives/roman.txt
kyane@europa:~/librecours$ ls archives/
compta-2019.txt images
Certains fichiers sont protégés en écriture, de telle sorte qu'il est nécessaire de confirmer la suppression, pour éviter les erreurs.
kyane@europa:~/librecours$ rm protected.txt
rm : supprimer 'protected.txt' qui est protégé en écriture et est du type « fichier vide » ? y
Remarque : Forcer la suppression
Pour éviter de devoir confirmer la suppression d'un fichier il est possible d'ajouter l'option -f
à la commande, pour forcer la suppression du fichier. Mais attention, si le fichier est protégé en écriture c'est peut-être qu'il y a une bonne raison...
Attention : Suppression définitive
Il est très important de noter que rm
est une commande qui supprime définitivement le fichier de la machine. Il n'y a pas de système de corbeille ou de sauvegarde que l'on peut restaurer lorsque l'on utilise cette commande. Il est donc important de réfléchir avant de lancer cette commande.
Méthode : Supprimer un dossier
Pour supprimer un dossier, on utilise la même commande mais il est nécessaire d'utiliser le paramètre -r
(comme avec cp
)
kyane@europa:~/librecours$ rm -r archives/
À retenir
Avec nos 3 nouvelles commandes, on sait désormais comment copier, déplacer, renommer ou supprimer des fichiers et dossiers sur notre ordinateur. Elles sont simple d'utilisation, et généralement la différence entre fichiers et dossiers se traduit simplement par l'utilisation de l'option -r
. On prend garde cependant à la commande rm
, qui supprime de manière définitive.
Méthode : Métacaractère
Un métacaractère est un caractère qui peut être substitué par une sélection de motifs, vous donnant plus de flexibilité dans la recherche. Vous pouvez utiliser des métacaractères, dans les commandes que nous avons vu, pour plus de flexibilité, par exemple pour copier plusieurs fichiers en même temps. Il en existe plusieurs :
*
le métacaractère des métacaractères, il est utilisé pour représenter n'importe quel caractère ou n'importe quelle chaîne de caractères ;?
utilisé pour représenter un unique caractère ;[]
utilisé pour représenter n'importe caractère dans les crochets.
Le plus courant est d'utiliser *
, par exemple pour copier tout mes fichiers images dans un autre dossier.
kyane@europa:~/librecours$ cp images/*.png archives/
Cela copie tout les fichiers terminant par .png
depuis le dossier images
vers le dossier archives
.
Attention :
L'utilisation de métacaractères peut être dangereuse. On suppose qu'il existe un fichier appelé -R
.
Si on exécute rm *
, la commande construite sera rm -R *
, qui efface récursivement tous les fichiers.
Pour prévenir ce comportement, on peut séparer explicitement les options des arguments en utilisant l'option --
:
rm *
exécutera rm -- -R *
et l'argument -R
sera bien interprété comme un nom de fichier et non comme une option.
Appliquer la notion
Créez un dossier vide dans lequel réaliser l'exercice. Une fois placé dans ce dossier, copiez/collez les commandes suivantes pour préparer "l'environnement".
mkdir -p imgaes/vacances-2019 imgaes/noel-2018 imgaes/a-developper
touch imgaes/vacances-2019/photo1.jpg imgaes/vacances-2019/photo2.jpg imgaes/vacances-2019/photo3.jpg imgaes/noel-2018/cadeau-papa.png imgaes/noel-2018/cadeau-sarah.png imgaes/noel-2018/cadeau-jonathan.png
Pour commencer on constate que le dossier imgaes
porte un nom un peu bizarre, sans doute une faute de frappe. Renommez-le correctement.
$ mv imgaes images
On souhaite développer toutes les photos de Noël 2018, ainsi que la "photo 1" des vacances de 2019. Pour cela on veut les copier dans le dossier images/a-developper/
que l'on va envoyer au développeur de photos.
Il y a plusieurs manières de procéder, mais il est possible de tout faire en une seule commande.
La méthode la plus rapide est d'indiquer plusieurs paramètres à la commande cp
: le premier pour récupérer toutes les photos de Noël, le second pour prendre la "photo 1" des vacances, le dernier pour spécifier la destination des 2 premiers paramètres.
$ cp images/noel-2018/*.png images/vacances-2019/photo1.jpg images/a-developper/
Mais il était aussi possible de déplacer les fichiers un par un, c'est beaucoup plus fastidieux et c'est là qu'on voit la puissance de la ligne de commande (et des métacaractères).
Afficher des fichiers
Objectifs
Savoir afficher tout ou partie des fichiers dans la console
Afficher des fichiers
Nous savons comment ouvrir des fichiers avec Nano pour les éditer directement dans la console. On pourrait donc se demander l'intérêt d'utiliser d'autres commandes pour afficher le contenu d'un fichier dans la console, puisque l'on peut le consulter avec Nano. Cependant cet outil reste un éditeur de texte, il est prévu pour éditer des fichiers et possède une interface qui lui est propre. Avoir une commande pour afficher le contenu d'un fichier et c'est tout permet de facilement récupérer le contenu d'un fichier pour le manipuler (même si l'on ne sait pas encore comment faire des scripts).
Méthode : La commande cat
On peut utiliser cat
(abréviation de concatenate) pour afficher le contenu d'un fichier dans le terminal.
kyane@europa:~/librecours$ cat roman.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam ornare vitae sem sed cursus. Maecenas sed mi eget ligula ullamcorper dapibus.
Nullam eu elit non dui maximus vulputate. Ut dolor est, commodo eu finibus nec, imperdiet et lacus. Morbi at mauris eros. Nullam pharetra aliquet mauris id finibus.
Comme son nom l'indique, la commande peut servir à afficher (et donc concaténer) plusieurs fichiers.
kyane@europa:~/librecours$ cat roman.txt suite.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam ornare vitae sem sed cursus. Maecenas sed mi eget ligula ullamcorper dapibus.
Nullam eu elit non dui maximus vulputate. Ut dolor est, commodo eu finibus nec, imperdiet et lacus. Morbi at mauris eros. Nullam pharetra aliquet mauris id finibus.
Pellentesque lectus dui, iaculis ac lorem in, vehicula porttitor urna. Mauris tincidunt, neque et rutrum placerat, leo dolor tempus felis, ac accumsan odio lacus nec nisl.
Nullam vulputate mattis aliquam. Vestibulum cursus dictum metus.
In iaculis orci eget mauris maximus, non mollis augue lacinia. Nulla viverra lorem lectus, vel cursus odio mollis quis. Aenean iaculis dui pellentesque, gravida turpis at, porta nibh.
Exemple :
On se rend compte cependant que cat
est adapté lorsque l'on veut visualiser de petits fichiers. Essayons avec le fichier /var/log/syslog
qui contient des messages d'information du système d'exploitation.
cat /var/log/syslog
Énormément de texte s'affiche dans notre console, ce n'est pas pratique à lire puisque qu'il faut remonter tout en haut du fichier.
Méthode : La commande less
Pour nous aider à visualiser le fichiers qui sont très grand, on utilise la commande less
. Cet outil ouvre une interface très basique qui permet de visualiser le fichier et de se déplacer dedans.
On peut utiliser quelques commandes :
parcourir le fichier à l'aide des flèches
Haut/Bas
, mais aussi faire de plus grand sauts avec les flèchesPage Up/Page Down
;quitter l'interface avec la touche
q
;g
permet de se rendre au début du fichier ;G
permet de se rendre en fin de fichier ;écrire
/
suivi d'un mot permet de rechercher le mot dans le document.
Récupérer des portions de fichier
Afficher un fichier dans sa totalité c'est bien, mais dans certains cas on ne souhaite pas forcément récupérer tout le fichier. Par exemple pour notre fichier de log /var/log/syslog
, on pourrait ne vouloir consulter que les 20 dernières lignes, pour voir les 20 événements les plus récents (chaque message supplémentaire de l'OS est inscrit à la fin du fichier). On peut utiliser cat
et ne regarder que la fin, mais ce n'est pas très pratique si le fichier est très gros cat
mettra du temps à l'afficher, et si l'on ne veut consulter que les premières lignes à l'inverse on est toujours embêté.
Méthode : tail
La commande tail
(qui signifie queue en anglais), permet justement de n'afficher que les dernières lignes d'un fichier.
kyane@europa:~/librecours$ tail /var/log/syslog
Nov 27 14:40:42 europa org.freedesktop.thumbnails.Thumbnailer1[20118]: Registered thumbnailer evince-thumbnailer -s %s %u %o
Nov 27 14:40:42 europa org.freedesktop.thumbnails.Thumbnailer1[20118]: Registered thumbnailer dia -t png -e %o -s %s %i
Nov 27 14:40:42 europa org.freedesktop.thumbnails.Thumbnailer1[20118]: Registered thumbnailer /usr/bin/gdk-pixbuf-thumbnailer -s %s %u %o
Nov 27 14:40:42 europa org.freedesktop.thumbnails.Thumbnailer1[20118]: Registered thumbnailer atril-thumbnailer -s %s %u %o
Nov 27 14:40:42 europa org.freedesktop.thumbnails.Thumbnailer1[20118]: Registered thumbnailer /usr/bin/gdk-pixbuf-thumbnailer -s %s %u %o
Nov 27 14:40:43 europa dbus-daemon[1976]: [session uid=1000 pid=1976] Successfully activated service 'org.freedesktop.thumbnails.Cache1'
Nov 27 14:40:43 europa dbus-daemon[1976]: [session uid=1000 pid=1976] Successfully activated service 'org.freedesktop.thumbnails.Thumbnailer1'
Nov 27 14:40:43 europa tumblerd[20118]: Name org.freedesktop.thumbnails.Cache1 lost on the message dbus, exiting.
Nov 27 14:40:43 europa tumblerd[20118]: Name org.freedesktop.thumbnails.Manager1 lost on the message dbus, exiting.
Nov 27 14:40:43 europa tumblerd[20118]: Name org.freedesktop.thumbnails.Thumbnailer1 lost on the message dbus, exiting.
Par défaut la commande ne retourne que les 10 dernières lignes, mais on peut utiliser le paramètre -n
pour en obtenir un nombre précis.
kyane@europa:~/librecours$ tail -n 5 /var/log/syslog
Nov 27 14:40:43 europa dbus-daemon[1976]: [session uid=1000 pid=1976] Successfully activated service 'org.freedesktop.thumbnails.Cache1'
Nov 27 14:40:43 europa dbus-daemon[1976]: [session uid=1000 pid=1976] Successfully activated service 'org.freedesktop.thumbnails.Thumbnailer1'
Nov 27 14:40:43 europa tumblerd[20118]: Name org.freedesktop.thumbnails.Cache1 lost on the message dbus, exiting.
Nov 27 14:40:43 europa tumblerd[20118]: Name org.freedesktop.thumbnails.Manager1 lost on the message dbus, exiting.
Nov 27 14:40:43 europa tumblerd[20118]: Name org.freedesktop.thumbnails.Thumbnailer1 lost on the message dbus, exiting.
Méthode : head
L'opposée de tail
est la commande head
(qui signifie tête) qui peut-être utilisée de la même manière, mais pour afficher le début d'un fichier.
kyane@europa:~/librecours$ head -n 5 /var/log/syslog
Nov 27 08:14:53 europa blueman-mechanism[701]: Unable to init server: Could not connect: Connection refused
Nov 27 08:14:53 europa systemd[1]: logrotate.service: Succeeded.
Nov 27 08:14:53 europa systemd[1]: Finished Rotate log files.
Nov 27 08:14:53 europa containerd[858]: time="2020-11-27T08:14:53.758802087+01:00" level=info msg="loading plugin \"io.containerd.content.v1.content\"..." type=io.containerd.content.v1
Nov 27 08:14:53 europa systemd[1]: Started User Login Management.
À retenir
Pour afficher des fichiers dans la console, on utilise des commandes dédiées plutôt que d'ouvrir le fichier avec Nano. On utilise cat
plutôt pour les petits fichiers, et less
pour les plus grands. Pour récupérer uniquement le début ou la fin d'un fichier, on s'appuie sur les commandes head
et tail
.
Appliquer la notion
Sans utiliser Nano, visualisez le fichier et trouvez la première occurrence du mot bibendum.
On va s'appuyer sur la commande less
.
On ouvre le fichier avec less
pour le visualiser.
$ less loremipsum.txt
Une fois dans l'interface, on tape /bibendum
pour trouver les occurrences du mot.
Comment récupérer les 2 dernières lignes du fichier dans notre terminal ?
On utilise la commande tail
.
$ tail -n 2 loremipsum.txt
Pellentesque quis blandit erat. Proin elit urna, imperdiet a vehicula non, consectetur eget urna. Aenean sit amet nunc leo. Etiam in porta orci, quis condimentum justo. Pellentesque pulvinar facilisis odio, sed posuere nunc porttitor at. Praesent vitae urna at arcu malesuada finibus. Mauris pulvinar lectus eu venenatis laoreet. Praesent nec nisl nec lectus ornare consectetur. Nunc id augue sit amet enim gravida pellentesque. Cras porttitor ornare varius. Cras blandit velit nec mi tempus luctus a eu lectus. Sed id ex sed augue convallis consectetur at at nulla. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Phasellus imperdiet libero et suscipit auctor
Quiz
Quiz - Culture
Sous Linux, quel est le caractère utilisé comme séparateur pour les chemins de fichier ?
/
\
$
~
Qu'est-ce que la racine du système de fichier sous Linux ?
C'est le disque dur principal utilisé pour stocker les fichiers
C'est le nom du dossier le plus haut dans l'arborescence, le dossier /
qui contient tout les autres dossiers.
C'est la langue utilisée dans le terminal
Parmi ces propositions, lesquelles sont des chemin relatifs ?
photos/vacances
/etc/ssh
/var/log
../var/log
Sous Linux, quel est le caractère utilisé pour désigner le dossier de l'utilisateur courant ?
/
\
$
~
Quiz - Méthode
Quelle commande devriez vous utiliser pour voir les fichiers cachés ?
Comment créer un fichier avec le nom "monfichier" ?
Comment créer un dossier nommé "photos" ?
Quelle est la touche à utiliser pour quitter l'interface de less
?
Quel paramètre utiliser avec la commande cp
pour copier un répertoire entier ?
Comment renommer le dossier "photos" en "images" ?
Quiz - Culture
Sous Linux, quel est le caractère utilisé comme séparateur pour les chemins de fichier ?
/
\
$
~
En effet on écrit les chemins sous la forme /home/kyane/hello.txt
Qu'est-ce que la racine du système de fichier sous Linux ?
C'est le disque dur principal utilisé pour stocker les fichiers
C'est le nom du dossier le plus haut dans l'arborescence, le dossier /
qui contient tout les autres dossiers.
C'est la langue utilisée dans le terminal
Parmi ces propositions, lesquelles sont des chemin relatifs ?
photos/vacances
/etc/ssh
/var/log
../var/log
Les chemins relatifs sont ceux qui dépendent du contexte, et qui ne commence donc pas à la racine (donc pas par un "/
")
Sous Linux, quel est le caractère utilisé pour désigner le dossier de l'utilisateur courant ?
/
\
$
~
En effet on utilise le "~
", par exemple ~/Documents
désigne le dossier Documents qui se trouve dans mon dossier d'utilisateur.
Quiz - Méthode
Quelle commande devriez vous utiliser pour voir les fichiers cachés ?
Comment créer un fichier avec le nom "monfichier" ?
Comment créer un dossier nommé "photos" ?
Quelle est la touche à utiliser pour quitter l'interface de less
?
Quel paramètre utiliser avec la commande cp
pour copier un répertoire entier ?
Comment renommer le dossier "photos" en "images" ?