Au coin du Frag
Programmation, jeux et bien plus...

Guide de survie Linux : commandes essentielles

Publié le : 13 juin 2026
Mise à jour le : 21 juin 2026
Temps de lecture : 21 min.

Guide de survie Linux : commandes essentielles

Crédit photo : Lukas on Unsplash

Guide de survie Linux : commandes essentielles

Ce bref mémo rassemble les commandes les plus fréquentes pour travailler dans un shell Unix. Il a été écrit particulièrement pour les shell Bash sous Linux mais les commandes présentées sont suffisament fréquentes pour se retrouver dans d'autres shells et même d'autres systèmes d'exploitation.

man : Afficher l'aide d'une commande

La commande `man` est la plus utile de toutes. Elle permet de lire la page de manuel de n'importe quelle autre commande. Par exemple man pwd permet de lire la page de manuel de la commande pwd. C'est particulièrement utile pour les commandes complexes qui acceptent de nombreux paramètres.

Pendant la lecture, tapez sur q pour quitter la page de manuel.

1. Navigation dans l'arborescence des fichiers

Sur un système Linux, l'ensemble du stockage est organisé en fichiers et en répertoires (contenant des fichiers) dans une arborescence unique. Le chemin d'un fichier est représenté depuis la racine de cette arborescence (notée/ ) par la liste des répertoires à parcourir pour atteindre ce fichier. Par exemple, le fichier doc1.pdf qui serait enregistré dans le répertoire personnel de l'utilisateur michelaura pour chemin : /home/michel/doc.pdf.

Note : Linux utilise le caractère / pour séparer les noms de répertoires là où Windows utilise la caractère \. On notera également que Linux n'a pas de notion de "lettre de lecteur" comme dans Windows.

Pour visualiser et se déplacer dans l'arborescence des fichiers, les commandes les plus utiles sont :

pwd (print working directory) : Connaître le répertoire courant

A tout moment, le contexte de travail du shell est placé dans un des répertoire du système de fichiers, `pwd` affiche ce répertoire.

cd (change directory) : Modifier le répertoire courant

Cette commande sert à changer le répertoire en cours. Elle peut prendre comme paramètre un chemin absolu (c'est à dire un chemin qui comment à /, la racine de l'arborescence ou un chemin relatif, c'est à dire un chemin formulé par rapport au répertoire courant.

Si l'utilisateur se trouve dans le répertoire /home/michel/Documents et qu'il veut aller dans le répertoire des téléchargements de l'utilisateur michel, il peut utiliser l'une des deux commandes suivantes :

cd /home/michel/Téléchargements

ou

cd ../Téléchargements

Remarque 1 : le répertoire .. est un nom de répertoire particulier qui désigne le répertoire parent d'un répertoire. Dans l'exemple ci-dessus, on l'utilise pour remonter de Documents dans /home/michel avant de redescendre dans Téléchargements.

Remarque 2 : la commande cd sans argument ramène l'utilisateur dans son répertoire personnel. Ce répertoire peut également être désigné par le symbole ~. Ainsi dans l'exemple ci-dessus, si c'est l'utilisateur michel qui tape la commande, il peut aussi utiliser cd ~/Téléchargements. Enfin, un autre utilisateur pourrait utiliser la syntaxe ~michel/Téléchargements pour désigner toujours le même répertoire.

Note : cd est une commande intégrée dans bash, sa page de manuel est celle du bash.

ls : Lister le contenu d'un répertoire

`ls` affiche la liste des fichiers contenus dans un répertoire. Le terme de fichiers est ici à prendre au sens large : dans le modèle Unix, tout est représenté par des fichiers, les répertoires sont eux-mêmes considérés comme un type particulier de fichier (et il en existe d'autres types). La commande ls est une commande très complète qui accepte énormément d'arguments.

Voici les plus fréquemment utilisés :

Nom courtNom longUtilisation
-a--allAffiche tous les fichiers, y compris les fichiers cachés. Sous Unix, les fichiers dont le nom comment par un point sont habituellement considérés comme des fichiers cachés et ne sont pas affichés par défaut.
-lAffiche le résultat au format long. Par défaut, ls n'affiche que les noms des fichiers. Quand -l est précisé, la commande va également afficher d'autres infos comme les permissions, le propriétaire ou la taille des fichiers.
-h--human-readableAffiche les infos de taille lisibles par un humain (en KiB, MiB...) plutôt qu'en octets.
-STrie les fichiers par taille croissante (plutôt que par nom).
-r--reverseInverse l'ordre de tri.
-R--recursiveListe les fichiers ainsi que le contenu des sous-répertoires, récursivement.
-tTrie les fichiers par date de dernière modification.

Enfin, la commande ls peut également prendre en paramètre le chemin d'un répertoire pour lister son contenu (sans avoir besoin de faire un cd dedans).

2. Manipulation des fichiers et des répertoires

mkdir (make directory) : Créer un répertoire

`mkdir` permet de créer un répertoire. Elle prend en paramètre le chemin (ou juste le nom) du répertoire à créer. Le paramètre -p (ou --parents en forme longue) indique de créer les répertoires parents si nécessaire.

cp (copy) : Copier des fichiers ou des répertoires

`cp` copie un ou plusieurs fichiers ou des répertoires. La syntaxe générale est : cp [OPTIONS] SOURCE DESTINATION

Où SOURCE est un ou plusieurs chemin de fichiers séparés par des espaces, DESTINATION est un chemin de fichier ou de répertoire.

Parmi les options, la plus fréquente est -r (ou -R ou encore --recursive) qui indique de copier récursivement les sous-répertoires.

mv (move) : Déplacer des fichiers ou des répertoires

`mv` est assez similaire à cp mais au lieu de copier, elle déplace le fichier. Remarque : c'est aussi cette commande qui sert à renommer un fichier puisque renommer revient à déplacer sous un autre nom au même endroit.

rm (remove) : Supprimer des fichiers

`rm` sert à supprimer un ou plusieurs fichiers. Elle prend en paramètres les chemins des fichiers à supprimer. Comme avec cp, elle accepte un paramètre -r pour agir récursivement. Ce paramètre est à employer avec précautions !

Note : il existe aussi une commande `rmdir` pour supprimer un répertoire.

touch : Modifier la date d'un fichier

`touch` modifie la date de dernier accès (-a) ou la date de dernière modification (-m) ou les deux si aucun de ces deux paramètres n'est utilisé. La nouvelle date est la date en cours. Le paramètre -t permet de spécifier la nouvelle date. Cette commande est souvent utilisée pour créer un fichier vide car si le fichier n'existe pas, elle le crée.

find : Rechercher des fichiers

Gros couteau Suisse pour retrouver un fichier dans une arborescence. La syntaxe générale de `find` est : find point-de-départ expressionpoint-de-départ est le répertoire où doit commencer la recherche (le répertoire courant s'il n'est pas précisé). expression correspond à une ou plusieurs expressions issue de la liste ci-dessous :

Expressions de recherche
-amin nTrouve les fichiers dont la date de dernier accès est il y a n minutes. +n pour les fichiers accédés il y a n minutes ou plus. -n pour les fichiers accédés il y a n minutes ou moins. Note : cette conversion +/- est applicable pour toutes les expressions qui attendent un nombre.
-atime nLes fichiers accédés il y a n jours.
-mmin nLes fichiers modifiés il y a n minutes.
-mtime nLes fichiers modifiés il y a n jours.
-emptyLes fichiers vides (de taille nulle).
-name patronLes fichiers dont le nom correspond au patron indiqué (voir plus bas la syntaxe des patrons).
-iname patronLes fichiers dont le nom correspond au patron indiqué sans tenir compte des majuscules/minuscules.
-path patronLes fichiers dont le chemin correspond au patron indiqué.
-ipath patronLes fichiers dont le chemin correspond au patron indiqué sans tenir compte des majuscules/minuscules.
-size nLes fichiers dont la taille est égale (ou supérieure ou inférieure) à n.On peut ajouter k, M ou G pour indiquer une taille en KiB, MiB ou GiB.
-user nom_utilisateurLes fichiers appartenant à l'utilisateur indiqué.
Expressions d'actions
-deleteSupprime les fichiers trouvés
-printAffiche le chemin complet du fichier (action par défaut si rien n'est précisé)

Quelques exemples :

# Cherche les fichiers nommés 'core' dans le répertoire /tmp ou ses sous-répertoires et les supprime
find /tmp -name core -delete

# Cherche tous les fichiers du répertoire de l'utilisateur qui ont été modifiés dans les dernières 24h
find ~ -mtime 0

ln : Créer des liens

`ln` est utilisée pour créer des liens entre des fichiers. Il existe deux types de liens : les liens symboliques et les liens "durs" (hard links).

Un lien symbolique est un fichier qui référence un autre fichier. Si on essaye d'y accéder, le shell se comportera comme si on avait saisi le chemin du fichier référencé. Si le fichier référencé est supprimé, le lien symbolique est brisé.

Un hard link est un chemin qui ammène au même contenu qu'un autre chemin. Si l'autre chemin est supprimé, le fichier persiste tant qu'il y a au moins un hard link qui référence le contenu.

La commande ln permet de créer les deux types de lien en précisant -s ou --symbolic pour faire un lien symbolique.

Sa syntaxe est : ln FICHIER_CIBLE NOM DU LIEN.

Exemple :

# Hard link
# fichier1.txt et fichier2.txt sont le même fichier, accessible depuis deux chemins différents
# si on supprime fichier1.txt, il est toujours possible d'accéder à fichier2.txt
ln /home/michel/fichier1.txt /home/michel/fichier2.txt

# Lien symbolique
# On peut accéder indifféremment à fichierA.txt ou lienA.txt
# Si on supprime fichierA.txt, il n'est plus possible d'accéder à lienA.txt non plus
ln -s /home/michel/fichierA.txt /home/michel/lienA.txt

file : Type de fichier

`file` permet de savoir quel type de données (du texte, une image...) est contenu dans un fichier donné.

Remarque : contrairement à Windows, Linux n'a pas de concept d'extension de nom de fichier. Il est possible d'utiliser un (ou plusieurs) points dans le nom d'un fichier mais ça n'a pas de signification particulière pour le shell.

3. Manipulation du contenu (texte) des fichiers

manipulation des pipes (tuyaux) et des redirections d'entrées/sorties

Les commandes du shell affichent leurs résultats sous forme de texte. Ce texte peut être transmis à d'autres commandes pour qu'elles l'utilisent comme entrées. Il est ainsi possible de chaîner plusieurs commandes. Il est aussi possible d'envoyer le texte résultant de l'exécution d'une commande dans un fichier ou de prendre le contenu d'un fichier pour le donner en entrée à une commande. Il y a pour cela quelques opérateurs à connaître :

  • le pipe (tuyau en anglais) : | . Ce symbole permet de prendre la sortie d'une commande et de la donner en entrée à une autre. Exemple : ls -l | wc -l va lister le contenu du répertoire et transmettre la liste des fichiers à la commande wc (qui compte les lignes, voir plus loin).
  • la redirection de sortie : >. Ce symbole permet de rediriger la sortie d'une commande dans un fichier. Le fichier est écrasé s'il existe déjà et créé sinon Exemple : ls -l > liste_des_fichiers.txt
  • la redirection de sortie en ajout : >>. Ce symbole permet de rediriger la sortie d'une commande dans un fichier. Le texte est ajouté à la fin du fichier s'il existe déjà. Si le fichier n'existe pas, il est créé. Exemple : ls -l >> liste_des_fichiers.txt
  • la redirection d'entrée : <. De la même manière, cette commande redirige le contenu d'un fichier en entrée d'une commande. Exemple : wc -l < liste_des_fichiers.txt

cat : Concatener et afficher

`cat` concatène le contenu de tous les fichiers qu'elle reçoit en paramètre et affiche le résultat. Elle est aussi très souvent utilisée pour simplement afficher le contenu d'un fichier. Avec l'option -n (ou --number), elle ajoute des numéros de lignes à l'affichage.

head : Entête de fichiers

`head` affiche les 10 premières lignes de chaque fichier qu'elle reçoit en paramètre. Le nombre de ligne peut être précisé par -n ou --lines. Elle permet de voir rapidement le début d'un long fichier.

tail : Fins de fichiers

`tail` fait l'inverse de head et affiche les dernières lignes d'un fichier. Elle possède une option très utile : -f qui permet à la commande de ne pas se terminer et d'attendre que de nouvelles données soient ajoutées dans le fichier pour les afficher. Ce paramètre est très utilisé pour surveiller le contenu d'un fichier de log d'une application.

sort : Trier le contenu d'un fichier

`sort` trie les lignes d'un fichier. Par défaut, le tri est un tri alphabétique et la commande accepte toute une variété d'option pour spécifier comment trier. Une option très fréquente est -r (ou --reverse) pour inverser l'ordre de tri.

less : Afficher le contenu d'un fichier

`less` affiche le contenu d'un fichier dans le terminal et permet à l'utilisateur de se déplacer dedans pour le lire. Les touches suivantes sont utilisables pendant l'affichage :

ToucheUsage
Touches fléchéesMonter ou descendre de une ligne.
PageUp / PageDownMonter ou descendre de une page.
Home / EndAller au début/à la fin du fichier.
EspaceAvancer d'une page.
(Saisir un nombre) GAller à la ligne spécifiée.
/ (saisir une chaîne)Rechercher (en avant) la chaîne indiquée.
? (saisir une chaîne)Rechercher (en arrière) la chaîne indiquée.
& (saisir une chaîne)N'afficher que les lignes qui contiennent la chaîne indiquée. (& ENTREE pour rétablir l'affichage complet).
&! (saisir une chaîne)N'afficher que les lignes qui ne contiennent pas la chaîne indiquée.
:nFichier suivant (si plusieurs fichiers ont été donnés en paramètre)
:pFichier précédent

Note : il existe très souvent une commande `more` (plus ancienne) qui fonctionne à peu près de la même manière

wc (word count) : Compter des mots

`wc` affiche le nombre de lignes, des mots et d'octets dans un ou plusieurs fichiers. L'option la plus fréquemment utilisée est -l (ou --lines) pour n'afficher que le nombre de lignes.

uniq : Dédoublonner les lignes d'un fichier

`uniq` dédoublonne les lignes multiples dans un texte. Très utile combinée avec sort pour trier et wc pour compter. Par exemple : cat liste_de_mots.txt | sort | uniq | wc -l va lire le contenu du fichier liste_de_mots.txt, trier ce contenu par ordre alphabétique, éliminer les doublons et compter le nombre de lignes.

cut : Couper des portions de lignes d'un fichier

`cut` découpe des portions spécifiées de chaque ligne d'un fichier. On indique ce qu'on veut couper avec les options suivantes :

Option courteOption longueUtilisation
-b--bytesNe garde que les octets spécifiées.
-c--charactersNe garde que les caractères (affichables) spécifiées.
-f--fieldsNe garde que les champs spécifiés. Les délimiteurs de champs sont spécifiées avec l'option -d (ou --delimiter).

Pour indiquer quels éléments on veut garder, on utiliser une liste d'entiers (séparés par des virgules).

Quelques exemples :

# Affiche les 5 premiers caractères de chaque ligne
cat fichier.txt | cut -c -5

# Affiche le 5ème caractère de chaque ligne
cat fichier.txt | cut -c 5

# Affiche du 5ème au dixième caractère de chaque ligne
cat fichier.txt | cut -c 5-10

# Affiche les trois premières colonnes dans un fichiers dont les colonnes sont séparées par des virgules
cat fichier.csv | cut -d , -c -3

grep : Trouver des patterns dans un fichier.

`grep` filtre les lignes d'un fichier selon des patterns (= des lignes qui respectent un modèle spécifié). Cette commande est, elle aussi, un gros couteau Suisse avec de nombreuses options.

Sa syntaxe générale est : grep OPTIONS PATTERN FICHIER

Les patterns peuvent être simplement des mots à rechercher ou des expressions régulières.

Les options les plus utilisées sont :

Option courteOption longueUtilisation
-i--ignore-caseNe pas tenir compte des majuscules/minuscules.
-v--invert-matchNe garder que les lignes qui ne correspondent pas à la recherche.
-c--countCompter les lignes qui correspondent à la recherche au lieu de les afficher.
-n--line-numberAfficher le numéro des lignes.
-r--recursiveRechercher récursivement dans tous les fichiers des sous-répetoires.

4. Commandes système

history : Afficher l'historique des précédentes commandes

`history` affiche les commandes précédemment utilisées.

L'option -c permet d'effacer l'historique des commandes.

Il est possible de réexécuter une précédente commande en tapant un point d'exclamation suivi de son numéro dans l'historique.

df (disk free) : Afficher l'espace libre sur le disque

`df` affiche l'espace disque sur le ou les disques du système. Elle accepte en paramètre un chemin et dans ce cas, elle n'affiche l'espace libre que pour le disque qui contient ce chemin.

L'option -h (ou --human-readable) affiche les tailles en utilisant l'unité la plus facle à lire (KiB, MiB, GiB...).

Astuce : l'option -i (ou --inodes) affiche l'espace libre, non pas en octets mais en inodes. Un inode est une entrée de répertoire. Ce nombre est lui aussi limité et il peut arriver dans de rares cas qu'un disque soit saturé non pas parce qu'il contient des fichiers trop gros mais parce qu'il contient un trop grand nombre de fichiers.

du (disk use) : Affiche l'espace disque utilisé

`du` est similaire à df mais elle affiche l'espace disque utilisé par chaque fichier et chaque répertoire du chemin reçu en paramètre. Si elle ne reçoit pas de chemin en paramètre, c'est le répertoire courant qui est utilisé.

L'option -h (ou --human-readable) affiche les tailles en utilisant l'unité la plus facle à lire (KiB, MiB, GiB...).

L'option -d (ou --max-depth) indique de ne pas analyser la taille de plus de N sous-répertoires de profondeur.

alias : Définir des alias de commandes

Sans argument, `alias` affiche les alias définis.
Sinon, elle accepte en paramètre des définitions d'alias au format NOM=VALEUR. La VALEUR doit être entourée par des simples quotes si elle contient des espaces.

Par exemple :

# Définit un alias de la commande ls pour faire toujours un affichage long en incluant les fichiers cachés
alias ll='ls -al'

Astuce : si on souhaite définir des alias pour toutes les sessions du shell, il suffit de placer les définitions dans le fichier .bashrc dans le répertoire de l'utilisateur. Ce fichier est automatiquement exécuté à l'initialisation du shell bash.

echo : Afficher un texte

Suivi d'une chaîne, `echo` affiche la chaîne dans le terminal. Elle est généralement utilisée dans les scripts pour afficher des informations à l'utilisateur. Elle accepte un argument -n pour ne pas faire de retour à la ligne automatique à la fin de la ligne affichée.

date : Afficher (ou modifier) la date et l'heure du système

Sans argument, `date` affiche l'heure courante.

Les paramètres les plus utiles sont :

Option courteOption longueUtilisation
-d--datePermet de spécifier la date à afficher
-u--universalAffiche la date et l'heure au format UTC

Remarque : il existe bien une commande time mais elle ne sert pas du tout à afficher l'heure !

which : Localiser une commande

`which` affiche le chemin qui serait exécuté pour une commande donnée. Par exemple which ls va généralement afficher /usr/bin/ls qui est l'emplacement de l'exécutable de la commande ls. which est le plus souvent utilisée dans des scripts pour vérifier la présence d'une commande sur le système avant de l'exécuter.

sudo : Exécuter une commande en utilisant le compte d'un autre utilisateur

`sudo` est le plus souvent utilisée par un utilisateur standard pour exécuter des commandes comme s'il était root.

5. Manipulation des permissions

Sous Linux, chaque fichier (ou répertoire) appartient à un (et un seul) utilisateur et un (et un seul) groupe. Il est possible de définir des permissions pour :

  • l'utilisateur propriétaire du fichier
  • les utilisateurs membres du groupe propriétaire du fichier
  • les autres (ie : tous les utilisateurs qui ne rentrent dans aucune des deux catégories précédentes)

Ces permissions peuvent être :

  • droit de lecture du fichier
  • droit de modification du fichier
  • droit d'écécution du fichier (s'il s'agit d'un programme ou d'un script shell)

Lorsqu'on utilise la commande ls -l, le format long affiche les infos de propriétaire et les permissions.

Dans l'exemple suivant, on voit que le fichier fichier.txt appartient à l'utilisateur manu et au groupe manu (par défaut, il existe un groupe de même nom que l'utilisateur qui contient uniquement l'utilisateur lui-même). On voit également que le répertoire Documents appartient lui aussi à l'utilisateur manu et au groupe manu.
Les permissions sur fichier.txt sont :

  • pour l'utilisateur : rw-, il peut donc lire et modifier ce fichier (mais pas l'exécuter)
  • pour les membres du groupe : les mêmes permissions
  • pour les autres utilisateurs : r-- donc un accès en lecture seule Les permissions sur Documents sont :
  • pour l'utilisateur : rwx, il peut donc lire (=lister le contenu) du répertoire, écrire (=créer de nouveaux fichiers ou effacer des fichiers existants) dans le répertoire et exécuter (=aller dans) le répertoire.
manu@ubuntu$ ls -l
total 32
drwxr-xr-x 2 manu manu 4096 Jun 13 18:57 Documents
drw-rw-r-- 2 manu manu 4096 Jun 13 18:57 fichier.txt

chmod : Changer les permissions

`chmod` permet de modifier les permissions sur un fichier ou un répertoire. On l'utilise de la façon suivante : chmod MODE FICHIER où :

  • FICHIER est le chemin d'un fichier ou d'un répertoire
  • MODE décrit les nouvelles permissions

L'option -R (ou --recursive) permet d'appliquer les permissions sur tous les fichiers et sous-répertoires récursivement.

Les permissions peuvent être décrites de deux façons :

  • numériquement, sous la forme d'un entier de trois chiffres désignant respectivement les permissions de l'utilisateur, du groupe et des autres. Chaque chiffre vaut la somme des permissions à donner avec r=4, w=2 et x=1.
  • en texte en indiquant si la permission s'applique à l'utilisateur (u), au groupe (g) ou aux autres (o), si elle doit être ajoutée (+) ou enlevée (-) et enfin de quelles permissions il s'agit (r, w et/ou x)

Quelques exemples :

# Donner le droit de lecture à tout le monde sur le fichier texte.txt :
chmod o+r texte.txt

# Enlever le droit d'aller dans le répertoire Secret au groupe :
chmod g-x Secret

# Donner tous les droits à tout le monde sur le répertoire Public :
chmod 777 Public

chown : Changer le propriétaire

`chown` permet de changer le propriétaire ou le groupe d'un fichier (ou d'un répertoire). La syntaxe générale est chown UTILISATEUR:GROUPE FICHIER avec :

  • UTILISATEUR : le nom de l'utilisateur qui devient propriétaire du fichier
  • GROUPE : le nom du groupe qui devient le groupe du fichier

Remarque : par défaut, seul l'utilisateur root est autorisé à appeler chown.

6. Manipulation des processus

Sur un système Linux, chaque programme en cours d'exécution se voit attribuer un numéro de processus (on parle de PID) qui l'identifie de façon unique.

ps : Lister les processus

`ps` affiche la liste des processus en cours. Par défaut, ps affiche les process de l'utilisateur en cours lancés depuis le terminal en cours. Les options les plus fréquentes sont :

Option courteUtilisation
-A ou -eAffiche tous les process
-fFormat d'affichage détaillé

Pour un affichage en arborescence, on peut aussi utiliser la commande pstree.

top / htop : Lister interactivement les processus

`top` (ou htop si elle est installée sur le système) affiche une table interactive des processus en cours d'exécution. Il est possible de trier ou de filter l'affichage et de tuer des processus. Lorsque la commande est lancée, les touches ? ou h permettent d'en afficher l'aide.

kill : Envoyer un signal à un processus

Sous Linux, les signaux sont des mécanismes qui permettent de communiquer entre plusieurs process. La commande `kill` permet d'envoyer un signal à un processus. La syntaxe générale est : kill SIGNAL PID où :

  • SIGNAL est l'identifiant du signal à envoyer (voir table ci-après)
  • PID est un ou plusieurs PID à qui envoyer le signal. Le PID spécial -1 signifie : tous les process sauf kill lui-même et init (le process racine).

Table des signaux les plus fréquents (la liste des signaux peut être obtenue avec kill -L) Certains signaux peuvent être envoyés au processus en cours par un raccourci clavier.

Nom (numéro) du signalClavierUtilisation typique
SIGHUP (1)Demander au processus de relire sa configuration
SIGINT (2)Ctrl+cDemander au processus d'interrompre sa tâche en cours
SIGQUIT (3)Ctrl+\Demander au processus de s'arrêter en enregistrant un fichier de déboggage (on l'appelle un fichier core)
SIGKILL (9)Demander au noyau de tuer le processus
SIGTSTP (20)Ctrl+zDemander au process de se mettre en pause

Quelques exemples :

# Mettre le process 123 en pause
kill -20 123
# ou 
kill SIGTSTP 123

# Tuer tous les process
kill -9 -1

jobs : Lister les process interrompus ou en arrière-plan

Quand des process ont été interrompus (avec kill SIGTSTP ou Ctrl+z par exemple), la commande `jobs` permet d'en obtenir la liste.

fg (foreground) : Relancer un process interrompu en avant-plan

`fg` débloque un process qui a été mis en pause et lui redonne l'accès au terminal en cours.

Exemple :

$ top
(taper CTRL+Z : le processus se met en pause) 
$ jobs
[1]+ Arrêté      top
$ fg
L'exécution de top reprend

S'il y a plusieurs processus en pause, on peut donner le numéro du job (précédé du signe %) en paramètre à fg.

bg (background) : Relancer un process interrompu en arrière-plan

`bg` fonctionne comme fg mais le processus relancé ne regagne pas l'accès au terminal. Il faut donc bien s'assurer que ce process se termine tout seul à un moment. On peut faire revenir en avant-plan un processus qui s'exécute en arrière-plan avec fg.