TLDR : des pages « man » simplifiées sous Linux

TLDR : des pages « man » simplifiées sous Linux

TLDR est un utilitaire donnant accès à une collection de pages d’aides simplifiées pour la plupart des outils en ligne de commande sous Linux.

Le nom « TLDR » est l’acronyme de « Too Long, Didn’t Read » (Trop long, je ne l’ai pas lu) provenant d’un constat simple: une documentation trop longue n’est généralement pas lue faisant ici référence par exemple aux pages de « man » qui bien qu’exhaustives sont parfois fastidieuses à lire.

TLDR propose donc une version simplifiée de l’aide aux outils en ligne de commande sous la forme d’exemples type de leur utilisation et d’une description brève de ceux-ci.

Installer et préparer TLDR

Comme toujours l’installation dépend de la distribution sur laquelle vous travaillez et du gestionnaire de package utilisé tel que apt, dnf, pacman etc.

Installation sous Ubuntu, Debian et leurs dérivés

La première étape consiste a simplement installer le package.

Bash
sudo apt install tldr

En suite il faut mettre à jour le contenu de tldr.

Bash
tldr -u

A ce stade vous pouvez parfois obtenir une erreur vous indiquant que le répertoire dans lequel tldr stocke son contenu n’existe pas:

steve@just-sudo-it bash_scripts $ tldr -u
tldr: /home/steve/.local/share/tldr: createDirectory: does not exist (No such file or directory)
steve@just-sudo-it bash_scripts

Il suffit alors de créer ledit répertoire pour résoudre le problème et de relancer la mise à jour.

Bash
mkdir -p ~/.local/share/tldr
tldr -u

Ce qui devrait donner le résultat suivant:

steve@just-sudo-it ~ $ mkdir -p .local/share/tldr
mkdir: created directory '.local'
mkdir: created directory '.local/share'
mkdir: created directory '.local/share/tldr'
steve@just-sudo-it ~ $ tldr -u
Cloning into 'tldr'...
remote: Enumerating objects: 93077, done.
remote: Counting objects: 100% (7250/7250), done.
remote: Compressing objects: 100% (3793/3793), done.
remote: Total 93077 (delta 3499), reused 7090 (delta 3415), pack-reused 85827
Receiving objects: 100% (93077/93077), 21.85 MiB | 14.14 MiB/s, done.
Resolving deltas: 100% (53091/53091), done.
steve@just-sudo-it $ 

Installation sous Arch Linux

Rien de sorcier ici, il suffit d’installer le package avec pacman et de lancer la mise à jour du contenu de tldr.

Bash
sudo pacman -S tldr
tldr -u
steve@just-sudo-it $  sudo pacman -S tldr
avertissement : tldr-3.2.0-1 est à jour -- réinstallation
résolution des dépendances…
recherche des conflits entre paquets…

Paquets (1) tldr-3.2.0-1

Taille totale installée :      0,09 MiB
Taille de mise à jour nette :  0,00 MiB

:: Procéder à l’installation ? [O/n] o
(1/1) vérification des clés dans le trousseau                                                                                             [####################################################################################] 100%
(1/1) vérification de l’intégrité des paquets                                                                                             [####################################################################################] 100%
(1/1) chargement des fichiers des paquets                                                                                                 [####################################################################################] 100%
(1/1) analyse des conflits entre fichiers                                                                                                 [####################################################################################] 100%
(1/1) vérification de l’espace disque disponible                                                                                          [####################################################################################] 100%
:: Traitement des changements du paquet…
(1/1) réinstallation tldr                                                                                                                 [####################################################################################] 100%
:: Exécution des crochetshooks ») de post-transaction…
(1/1) Arming ConditionNeedsUpdate...
steve@just-sudo-it ~ $ tldr -u
Updated cache for 626 entries
steve@just-sudo-it $ 

Installation sous Red Hat, Rocky Linux, CentOS, Fedora & cie

Le package tldr est disponible dans les dépôts officiels « epel » et installable à l’aide de dnf. Il ne reste après plus qu’à mettre à jour le contenu de tldr.

Bash
sudo dnf install epel-release
sudo dnf install tldr
tldr -u
steve@just-sudo-it ~ $ sudo dnf install tldr
=====================================================================================================================================================================================================================================
 Paquet                                                   Architecture                                Version                                                                   Dépôt                                          Taille
=====================================================================================================================================================================================================================================
Installation:
 tldr                                                     noarch                                      1.2.0-1.el8                                                               epel                                            26 k
Installation des dépendances:
 python3-argcomplete                                      noarch                                      1.9.3-6.el8                                                               appstream                                       59 k
 python3-colorama                                         noarch                                      0.4.3-1.el8                                                               epel                                            35 k
 python3-pip                                              noarch                                      9.0.3-22.el8.rocky.0                                                      appstream                                       19 k
 python3-termcolor                                        noarch                                      1.1.0-24.el8                                                              epel                                            15 k
 python36                                                 x86_64                                      3.6.8-38.module+el8.5.0+671+195e4563                                      appstream                                       18 k
Activation des flux de modules:
 python36                                                                                             3.6

Résumé de la transaction
=====================================================================================================================================================================================================================================
Installer  6 Paquets

Taille totale des téléchargements : 173 k
Taille des paquets installés : 349 k
Voulez-vous continuer ? [o/N] : o
Téléchargement des paquets :
(1/6): python3-pip-9.0.3-22.el8.rocky.0.noarch.rpm                                                                                                                                                   256 kB/s |  19 kB     00:00
(2/6): python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64.rpm                                                                                                                                      224 kB/s |  18 kB     00:00
(3/6): python3-argcomplete-1.9.3-6.el8.noarch.rpm                                                                                                                                                    667 kB/s |  59 kB     00:00
(4/6): python3-termcolor-1.1.0-24.el8.noarch.rpm                                                                                                                                                      97 kB/s |  15 kB     00:00
(5/6): tldr-1.2.0-1.el8.noarch.rpm                                                                                                                                                                   164 kB/s |  26 kB     00:00
(6/6): python3-colorama-0.4.3-1.el8.noarch.rpm                                                                                                                                                       201 kB/s |  35 kB     00:00
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                117 kB/s | 173 kB     00:01
Test de la transaction
La vérification de la transaction a réussi.
Lancement de la transaction de test
Transaction de test réussie.
Exécution de la transaction
  Préparation           :                                                                                                                                                                                                        1/1
  Installation          : python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64                                                                                                                                                   1/6
  Exécution du scriptlet: python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64                                                                                                                                                   1/6
  Installation          : python3-pip-9.0.3-22.el8.rocky.0.noarch                                                                                                                                                                2/6
  Installation          : python3-termcolor-1.1.0-24.el8.noarch                                                                                                                                                                  3/6
  Installation          : python3-colorama-0.4.3-1.el8.noarch                                                                                                                                                                    4/6
  Installation          : python3-argcomplete-1.9.3-6.el8.noarch                                                                                                                                                                 5/6
  Installation          : tldr-1.2.0-1.el8.noarch                                                                                                                                                                                6/6
  Exécution du scriptlet: tldr-1.2.0-1.el8.noarch                                                                                                                                                                                6/6
  Vérification de       : python3-argcomplete-1.9.3-6.el8.noarch                                                                                                                                                                 1/6
  Vérification de       : python3-pip-9.0.3-22.el8.rocky.0.noarch                                                                                                                                                                2/6
  Vérification de       : python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64                                                                                                                                                   3/6
  Vérification de       : python3-colorama-0.4.3-1.el8.noarch                                                                                                                                                                    4/6
  Vérification de       : python3-termcolor-1.1.0-24.el8.noarch                                                                                                                                                                  5/6
  Vérification de       : tldr-1.2.0-1.el8.noarch                                                                                                                                                                                6/6

Installé:
  python3-argcomplete-1.9.3-6.el8.noarch     python3-colorama-0.4.3-1.el8.noarch     python3-pip-9.0.3-22.el8.rocky.0.noarch     python3-termcolor-1.1.0-24.el8.noarch     python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64
  tldr-1.2.0-1.el8.noarch

Terminé !
steve@just-sudo-it $  tldr -u
Updated cache for 626 entries
steve@just-sudo-it $ 

Autres distributions

Si votre distribution ne dispose pas de package pour tldr vous pouvez toujours l’installer à l’aide de pip3, je gestionnaire de package pour le langage Python 3 et exécuter la mise à jour du contenu de l’aide.

Bash
pip3 install tldr
tldr -u

Utilisation de TLDR

Mise à jour du contenu de l’aide de TLDR

La première chose à faire après avoir installé tldr est de télécharger le contenu des pages d’aides. Comme il s’agit de contenu communautaire, il est également toujours bon de répéter l’opération de temps à autre.

Bash
tldr -u

Obtenir de l’aide pour une commande avec TLDR

L’utilisation de tldr est extrêmement simple, il suffit de lui passer en paramètre le nom de l’outil de ligne de commande pour lequel nous souhaitons de l’aide:

Bash
tldr <commande>

Voici par exemple le résultat pour la commande mkdir:

steve@just-sudo-it ~ $ tldr mkdir
mkdir
Create directories and set their permissions.More information: https://www.gnu.org/software/coreutils/mkdir.

 - Create specific directories:
   mkdir {{path/to/directory1 path/to/directory2 ...}}

 - Create specific directories and their [p]arents if needed:
   mkdir -p {{path/to/directory1 path/to/directory2 ...}}

 - Create directories with specific permissions:
   mkdir -m {{rwxrw-r--}} {{path/to/directory1 path/to/directory2 ...}}
steve@just-sudo-it ~ $

Obtenir l’aide d’une sous commande avec TLDR

Il est également possible d’obtenir de l’aide d’une sous-commande. Par exemple l’utilitaire git dispose de sous commande comme branch, checkout ou encore commit.

Bash
tldr <commande>-<sous-commande>

Ainsi nous pouvons avoir de l’aide pour git commit comme le montre l’exemple ci-dessous:

steve@just-sudo-it ~ $ tldr git-commit
git commit
Commit files to the repository.More information: https://git-scm.com/docs/git-commit.

 - Commit staged files to the repository with a message:
   git commit --message "{{message}}"

 - Commit staged files with a message read from a file:
   git commit --file {{path/to/commit_message_file}}

 - Auto stage all modified and deleted files and commit with a message:
   git commit --all --message "{{message}}"

 - Commit staged files and sign them with the specified GPG key (or the one defined in the config file if no argument is specified):
   git commit --gpg-sign {{key_id}} --message "{{message}}"

 - Update the last commit by adding the currently staged changes, changing the commit's hash:
   git commit --amend

 - Commit only specific (already staged) files:
   git commit {{path/to/file1}} {{path/to/file2}}

 - Create a commit, even if there are no staged files:
   git commit --message "{{message}}" --allow-empty
steve@just-sudo-it ~ $

Obtenir l’aide d’une commande pour une plateforme spécifique avec TLDR

Enfin nous pouvons aussi avoir de l’aide pour une commande sur une plateforme spécifique, par exemple pour Windows, Android, etc.

Bash
tldr -p <plateforme> <commande>

Voici par exemple le résultat pour l’aide concernant la commande ipconfig sous Windows:

steve@just-sudo-it ~ $ tldr -p windows ipconfig
ipconfig
Display and manage the network configuration of Windows.More information: https://learn.microsoft.com/windows-server/administration/windows-commands/ipconfig.

 - Show a list of network adapters:
   ipconfig

 - Show a detailed list of network adapters:
   ipconfig /all

 - Renew the IP addresses for a network adapter:
   ipconfig /renew {{adapter}}

 - Free up the IP addresses for a network adapter:
   ipconfig /release {{adapter}}

 - Show the local DNS cache:
   ipconfig /displaydns

 - Remove all data from the local DNS cache:
   ipconfig /flushdns
steve@just-sudo-it ~ $

Conclusion

tldr nous offre une source d’aide rapide et efficace qui vient très bien compléter man et a l’avantage de nous proposer des exemples de syntaxes avec une brève description, ce qui nous dispense généralement de recherches longues et fastidieuses sur notre moteur de recherche préféré.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.