Grimoire-
Command
.es

GNU+Linux command memo

Memo_0 : aide mémoire des commandes en ligne, nomenclature

D’après l’édition 11 des travaux d’Alain Leaper, 2018-04-10
Licence GPL

1. Avertissements

Toutes les options ne sont pas listées ici, pour les obtenir :

$ man $nomCommande (1)
1 ou $ man $n $nom_commande avec $n le numéro de la section recherchée

Pour avoir les pages manuel en français installer le paquet : manpages-fr-extra.

Pour avoir les pages manuel en anglais (en général plus complètes et plus à jour).

$ LANG=C man $nom_commande

Un résumé des options est souvent disponible par:

$ nomCommande --help  (1)
1 quelques fois : $ nomCommande -h

2. Conventions

  • $ en début de ligne indique la présence d’un utilisateur ordinaire (user)

  • # en début de ligne indique la présence de l’administrateur (super utilisateur, root)

  • indique le résultat d’une commande

  • /* pour introduire un commentaire */ (ou -- […] --)

  • <nom_evocateur> indique un élément à adapter suivant votre contexte

3. Démarrage

Les lignes de commandes sont entrées dans un terminal (xterm) en mode graphique ou en mode console. Avec Ubuntu il est possible d’ouvrir un terminal par les touches Ctrl+Alt+T (dépend des distributions).

Toute commande est validée par la touche Entrée (Enter).

En général la "complétion" automatique est possible: une commande ou un argument tapé de manière partielle est complété à l’aide de la touche tabulation (le plus souvent).

Le rappel des commandes précédentes / suivantes se fait à l’aide des flèches vers le haut / vers le bas du clavier.

Les options décrites sont précédées du signe "-" même si avec Linux ce n’est pas toujours nécessaire…

L’interpréteur de commandes (shell) utilisé est bash.

Pour sortir d’un terminal : Ctrl+d ou exit

Pour arrêter un programme, en particulier s’il boucle: Ctrl+c

4. Autres ressources

5. Liste des mémos

5.1. Memo_1 : parcourir les dossiers et lister les fichiers

5.1.1. pwd, ls, cd : navigation dans les répertoires

5.1.2. pushd, popd, dirs : navigation répétitive dans les répertoires

5.1.3. CDPATH : raccourcis de navigation entre les répertoires

5.1.4. file : renvoie la nature d’un fichier

5.1.5. df : renvoie l’occupation des partitions

5.1.6. du : renvoie l’occupation du répertoire spécifié et de ses sous-répertoires

5.2. Memo_2 : gérer les dossiers, bouger les fichiers

5.2.1. mkdir : (make directory) création d’un répertoire

5.2.2. rmdir : suppression d’un répertoire vide

5.2.3. rm : (remove) suppression d’un fichier / répertoire

5.2.4. mv : (move) renommer ou/et déplacer un fichier / un répertoire

5.2.5. cp : (copy) copier un fichier / un répertoire

5.2.6. cat : concaténation de fichiers

5.2.7. dd : copie par blocs

5.3. Memo_3 : gérer les utilisateurs

5.3.1. chmod : changement des droit fichiers/répertoires

5.3.2. su : changement d’utilisateur, passer admistrateur

5.3.3. sudo : commandes admistrateur

5.3.4. chown : changement de propriétaire d’un fichier / répertoire

5.3.5. `chgrp ` : changement de groupe d’un fichier / répertoire

5.3.6. groupadd : créer un nouveau groupe

5.3.7. groupdel : supprimer un groupe

5.3.8. gpasswd : modifier le mot de passe d’un groupe / ajouter un membre

5.3.9. usermod : en particulier, permet de modifier le groupe principal d’un utilisateur

5.3.10. usermod -u : affecter un nouvel uid (groupmod pour gid)

5.3.11. adduser : créer un nouvel utilisateur / ajouter un membre à un groupe

5.3.12. deluser : supprimer un utilisateur ; supprime un membre d’un groupe

5.3.13. passwd : changer le mot de passe d’un utilisateur (en cas d’oubli…​)

5.3.14. newgrp : permet de devenir membre d’un groupe

5.3.15. id : donne l’id, le gid, ..==== et notamment liste les groupes dont on fait partie

5.3.16. groups : donne la liste des groupes dont on est membre

5.3.17. passwd : entrer un nouveau mot de passe

5.3.18. who : donne la liste des utilisateurs

5.4. Memo_4 : flux de données

5.4.1. Les canaux standards

5.4.2. Redirection du canal de sortie standard vers un fichier

5.4.3. Redirection du canal standard d’erreur vers un fichier

5.4.4. Le "trou noir" : pseudo fichier périphérique /dev/null

5.4.5. Réunion des canaux standards de sortie et d’erreur

5.4.6. Redirection du canal d’entrée standard depuis un fichier

5.4.7. Utilisation d’un tube (pipe) entre commandes

5.4.8. 'tee' derrière un tube

5.4.9. tee : lecture de stdin, sortie sur stdout et dans un fichier

5.4.10. xargs : prendre des lignes de texte sur son entrée standard pour les regrouper.

5.4.11. cat : concaténation de plusieurs fichiers

5.4.12. echo : sortie vers stdout d’une chaîne de caractères issue de stdin options -n et -e

5.4.13. bash -c printenv : permet de lister les variables d’environnement

5.4.14. La variable PATH

5.5. Memo_5 : chaînes de caractères et sous-invocation de shells

5.5.1. Utilisation de " ", ' ' et \

5.5.2. Utilisation de ` `

5.5.3. Utilisation de $() et de $(( ))

5.5.4. Niveaux d’imbrication des shells

5.5.5. Chaîner des commandes

5.6. Memo_6 : Chercher du texte, des fichiers…

5.6.1. grep : recherche d’une chaîne / filtrage sur la sortie d’une commande

5.6.2. find : recherche de fichiers dans l’arborescence des répertoires

5.6.3. locate : recherche les fichiers dont le nom contient la chaîne donnée en argument

5.6.4. whereis : localise un fichier exécutable dont le nom est connu

5.8. Memo_8 : Compression / décompression

5.8.1. tar : gestion d’archives - compression / décompression par gzip ou bzip2 ou xz -

5.8.2. zip et unzip : création / extraction d’archives compressées

5.8.3. gzip / bzip2 / xz : compression de fichiers

5.8.4. format .7z, p7zip

5.8.5. décompression .rar : unrar-free, unrar

5.8.6. xecompression de fichiers à format spécifiques (PNG, FLAC, JPEG)

5.9. Memo_9 : Récupération sur le web

5.9.1. curl : récupération sur le web

5.9.2. wget : récupération sur le web

5.9.3. doc_crawler.py : récupération sur le web

5.9.4. md5sum : vérification de l’intégrité d’un fichier

5.9.5. sha1sum, sha256sum, sha512sum : vérification de la checkcsum d’un fichier.

5.10. Memo_10 : Explorer le matériel

5.10.1. uname : liste les caractéristiques de la plateforme

5.10.2. /etc/issue : connaître la version du système d’exploitation

5.10.3. /proc/cpuinfo : caractéristiques du microprocesseur

5.10.4. free : mémoire vive installée, utilisée…

5.10.5. xrandr : affiche les résolutions d’écran

5.10.6. lspci : afficher les périphériques PCI et AGP

5.10.7. lsusb : liste les concentrateurs et périphériques USB

5.10.8. lsdev : liste les périphériques

5.10.9. fdisk -l : liste la table des partitions

5.10.10. blkid : liste les UUID des différentes partitions

5.10.11. dmidecode : informations sur le matériel, carte mère, BIOS…

- Par exemple : connaître la date de fabrication de son ordinateur

5.10.12. lshw : information sur le matériel, les périphériques

5.10.13. Mesure de la vitesse de lecture de la RAM

5.10.14. lstopo : résumé de la topologie du système

5.10.15. procinfo : statistiques globales d’utilisation des ressources

5.10.16. hciconfig : configuration, et version, des périphériques Bluetooth

5.10.17. /etc/issue : permet de connaître la version du système d’exploitation

5.10.18. /proc/cpuinfo : liste les caractéristiques du microprocesseur utilisé

5.11. Memo_11 : Liens, date et patches

5.11.2. date : date (création/modification) d’un fichier, heure du système

5.11.3. diff : différences entre deux fichiers, création d’un fichier patch

5.11.4. patch : application de modifications à un fichier

5.12. Memo_12 : sed

5.12.1. sed (Stream EDitor) traitement d’un flux de caractères

5.13. Memo_13 : Systèmes de fichier

5.13.1. mount : montage d’un périphérique sur un répertoire

5.13.2. mke2fs : création d’un système de fichier ext2, ext3, ext4

5.13.3. mkfs.fat : réparer une clé usb

5.13.4. dd pour créer une clé bootable avec image (iso) copiée sous la racine

5.13.5. vérifier la validité d’une clé bootable / d’un CD/DVD

5.13.6. Montage au démarrage : fichier de configuration /etc/fstab

5.13.7. Patition donnée par son UUID : commande /sbin/blkid → liste des UUID

5.13.8. e2fsck : vérification d’un système de fichier

5.13.9. mformat : formate une disquette en fat (MSDOS)

5.14. Memo_14 : Émincer des fichiers texte

5.14.1. wc : comptage des lignes, des mots, des caractères d’un fichier

5.14.2. head : affichage des premières lignes d’un fichier

5.14.3. tail : affichage des dernières lignes d’un fichier

5.14.4. cut : affichage des fragments spécifiés de chaque ligne d’un fichier

5.14.5. sort : mise en ordre, éventuellement concaténation de lignes de fichier(s).

5.14.6. tr : modification de séquences de caractères

5.15. Memo_15 : Accès avancés aux fichiers

5.15.1. Différentes solutions pour faire le "dump" d’un fichier

5.15.2. Conversion de format ou de nom de fichier (latin1 / UTF-8)

5.16. Memo_16 : APT, Aptitude, Wajig, Dpkg

5.16.1. apt

5.16.2. aptitude

5.16.3. wajig

5.16.4. dpkg Debian Package

5.16.5. Divers problèmes liés aux mises à jour

- mise à jour impossible
- Problème de clé GPG
- Mise à jour interrompue
- Réparation des paquets cassés
- Paquet impossible à supprimer

5.17. Memo_17 : Accès internet

5.17.1. ifconfig : renseigne sur la config réseau

5.17.2. ping : vérifie la présence d’une station sur le réseau

5.17.3. /sbin/route -n : permet de connaître l’adresse de sa passerelle (box)

5.17.4. ftp : pour assurer le transfert de fichiers sur un réseau local

5.17.5. bwm-ng : mesure de débits (entrant et sortant)

5.17.6. Problèmes liés au WiFi

- Quelles caractéristiques pour cet interface ?
- Pour voir ce qui se passe quand le WiFi se lance :
- Autres commandes

5.17.7. Complément

5.18. Memo_18 : Le chargeur d’amorçage GRUB 2

5.18.1. Numérotation des disques et des partitions

5.18.2. Changer la temporisation de démarrage

5.18.3. Modifier l’ordre des choix de lancement au démarrage

5.18.4. Chargement d’un système d’exploitation respectant les spécifications Multiboot

5.18.5. Ré-installation du grub d’un système tiers

5.19. Memo_19 : Processus

5.19.1. top : renseignements, en continu, sur l’utilisation du CPU et de la mémoire

5.19.2. ps : (process status) renseignements sur les processus

5.19.3. kill : envoi d’un signal à un processus (pas toujours pour le tuer !)

5.19.4. nice : permet de modifier la priorité d’exécution d’un processus

5.19.5. tty : identifie le terminal en cours

5.19.6. stty : donne la configuration du terminal

5.19.7. Ouvrir une session en mode console

5.19.8. Arrêt du système

5.20. Memo_20 : Noyau - Modules

5.20.1. dmesg : messages du noyau

5.20.2. lsmod : liste tous les modules installés

5.20.3. modinfo <nom_module> : informations relative à un module

5.20.4. modprobe <nom_module> : permet de charger/décharger un module