Terminal
Quelques astuces pour configurer votre terrminal
Shell
Vérifier la version du shell
bash --version # Check Bash version
zsh --version # Check ZSH version
fish --version # Check fish version
gnome-shell --version # Check GNOME versionChanger le shell par défaut
Remplacer Bash par Zsh
Zsh (abréviation de Z Shell) est un programme shell riche en fonctionnalités pour les systèmes d'exploitation de type Unix (dont Linux est un dérivé) avec de nombreuses fonctionnalités. Il s'agit d'une version étendue du Bourne Shell (sh). L'intérêt de Zsh par rapport à la plupart des autres commandes cd, l'extension de chemin récursif et la correction orthographique et la sélection interactive de fichiers et de répertoires.
Zsh se trouvat dans les référentiels Fedora et peut être installé avec la commande dnf suivante.
Installation de ZSH
Oh-My-ZSH (OMZ)
Oh My Zsh est un framework pour ZSH, il fournit de nombreux thèmes et plugins (support de PHP, Python, PostgreSQL ...). Ci-dessous, sont présents ceux que j'utilise.
Pour l'installer, lancer la commande suivante :
Une fois "Oh My Zsh" d'installé, il suffit de redémarrer ZSH pour prendre en compte les changements. (CTRL + D puis "zsh")
Activer les mise à jour de Oh-My-ZSH
Il est possible de mettre à jour OMZ de deux façons, manuellement ou de façon automatique Mise à jour manuel
Mise à jour automatique
Thèmes OMZ
Il existe plusieurs thèmes pour OMZ, voici comme installer deux d'entre eux (agnoster et powerlevel10K)
La liste complète est thèmes est disponible ici.
Agnoster
1 - Ouvrir le fichier .zhrc
2 - Changer le thème par défaut
Parcourez votre fichier afin de trouver cette ligne ZSH_THEME et ajouter agnoster
3 - Mettre à jour le fichier de config ZSH
Powerlevel10K
Avant de procéder à l'installation du thème Powerlevel10K, il est fortement reccomander d'installer la polices d'écriture Meslo Nerd Font pour une meilleur confort.
Pré-requis : Meslo Nerd Font
Télécharger Meslo Nerd Font (fichiers ttf)
Installer les fonts sur votre système
Double-cliquer sur chaque fichier, et cliquer "Install". Cela installera MesloLGS NF sur votre système.
Définir la police d'écriture dans votre Terminal ou IDE
Visual Studio Code: Ouvrir Fichiers → Préférences → Paramètres (PC) ou Code → Préférences → Paramètres (Mac), et taper
terminal.integrated.fontFamilydans la barre de recherche présente en haut de l'onglet Préférences et basculer la valeur surMesloLGS NF. Vous pouvez consulter ce screenshot pour voir ce que cela doit donner.GNOME Terminal / Tilix (le terminal par défaut de Fedora): Ouvrir le Terminal → Préférences et sélectionner un profil . Rechercher Custom font sous Text Appearance et sélectionner
MesloLGS NF Regular
Installation de Powerlevel10K
1 - Cloner le répertoire suivant
2 - Ouvrir le fichier .zhrc
3 - Changer le thème par défaut
Parcourez votre fichier afin de trouver cette ligne ZSH_THEME et ajouter powerlevel10k
4 - Mettre à jour le fichier de config ZSH
Plugins
Voici deux plugins très utile pour OMZ que j'utilise au quotidien :
zsh-syntax-highlighting : un plugin pour rendre la syntax plus agréable à lire
zsh-autosuggestions : un plugin de suggestion d'autocomplétion
1 - Pour les installer, cloner ces répertoires dans le dossier plugins de oh-my-zsh.
Par défaut celui-ci si trouve ici : ~/.oh-my-zsh/custom/plugins)
2 - Ouvrir le fichier .zhrc
3 - Ajouter vos plugins à ceux existant. Parcourez votre fichier afin de trouver cette ligne plugins=( et remplacer par :
3 - Mettre à jour le fichier de config ZSH
Warp
Warp est un émulateur de terminal écrit en Rust. Il se distingue par des fonctionnalités telles que Warp Drive pour le partage de commandes entre équipes, Warp AI pour les suggestions et l'assistance des commandes, ainsi qu'un IDE moderne avec une sélection de texte et un positionnement du curseur.
Installation
La manière la plus simple d'installer Warp est de télécharger et d'installer le paquet rpm. Après le téléchargement, vous pouvez installer le paquet avec :
L'installation du paquetage .rpm configurera automatiquement le dépôt yum de Warp. Lors de la première mise à jour, dnf récupérera la clé de signature nécessaire pour vérifier l'intégrité des paquets téléchargés.
TMUX
tmux est un multiplexeur de terminaux libre en mode texte. Il permet d'utiliser plusieurs terminaux virtuels dans une seule fenêtre de terminal ou une session sur un terminal distant. tmux peut être détaché d'une session et continuer de fonctionner en arrière-plan, on peut également s'y rattacher plus tard. Wikipédia
Installation
Liste de raccourcis
tmux ls : voir la liste liste des tmux actifs
tmux new -s mysession : démarrer une nouvelle session avec un nom
tmux a -t mysession : se connecter à votre dernière session qui porte un nom
Cheatsheet
Dog
dog est un client DNS en ligne de commande comme dig. Il utilise une syntax colorée qui comprend la syntaxe normale des arguments en ligne de commande. Le client supporte les protocoles DNS-over-TLS et DNS-over-HTTPS, et peut émettre du JSON.
Installation
Sur Fedora, vous pouvez installer dog via Snapcraft ou manuellement
Installation via Snap
Installation manuelle
Installer gcc, tar, et les librairies SSL nécéssaire : libssl or openssl.
Note : You may need to update your system’s version of the GNU C library (glibc).
Installer maintenant Rust. Il vous sera utile pour complier le code source de dog :
Lorsque le terminal vous le proposer, sélectionner 1 pour procéder à l'installation dans le dossier par défaut. Après avoir redémarrer votre terminal, taper la commande suivante :
Naviguer dans la release page de dog, identifier la version la plus récente, et copier l'URL du ficher .tar.gz. Télécharger le fichier en remplacant par l'URL que vous venez de copier
Décompresser les fichers du l'archive .tar.gz file, et entrez dans le répertoire extrait.
Remplacez le nom de fichier ci-dessous par celui du fichier que vous avez téléchargé.
De même, remplacez le nom du répertoire par celui du fichier extrait :
Avant de lancer le build, lancer cette commande pour mettre à jour les dépendances de Cargo
Lancer le build avec Cargo pour générer le fichier binaire de dog:
Copier le fichier binaire dans le dossier bin de l'utilisateur :
Vérifier votre installation en identifiant la version de dog installer
Cyberduck CLI
Un outil de transfert de fichiers qui s'exécute dans votre shell sous Linux & OS X ou votre invite de ligne de commande Windows. Modifiez des fichiers sur des serveurs distants, téléchargez, chargez et copiez entre des serveurs avec FTP, SFTP ou WebDAV, ainsi que la prise en charge des déploiements de stockage dans le cloud Amazon S3 et OpenStack Swift.
Installation
MTR (My Traceroute)
Un outil de diagnostic de réseau en ligne de commande qui fournit les fonctions des commandes Ping et Traceroute.
Installation
VIM
VIM permets de lire et d'éditer des fichiers depuis votre terminal. Pas facile à prendre en main :D
Installation
Liste de raccourcis
:q! or ZQ - quitter et abandonner les modifications non sauvegardée
Faire une modification sur un fichier
Rechercher la valeur à modifier :
/<value>Faire une insertion :
iChanger la valeur
Quitter la saisie vim :
exitSauvegarder et quitter vim :
:wq
Mouvement du curseur
k- déplacer le curseur vers le haut ⬆️j- déplacer le curseur vers le bas⬇️h- déplacer le curseur vers la gauche ⬅️l- déplacer le curseur vers la droite ➡️H- déplacement vers le haut de l'écran ⬆️M- déplacement vers le milieu de l'écranL- déplacement vers le bas de l'écran⬇️gg- aller à la première ligne du document ⏫G- aller à la dernière ligne du document ⏬
GNU nano
GNU nano permet de lire et d'éditer des fichiers depuis votre terminal mais de façon plus accessible que VIM.
Installation
Liste de raccourcis
Toutes les commandes sont préfixées avec soit ^ ou M.
Le symbole caret (
^) représente la toucheCtrlde vote clavier.La lettre
Mreprésente la toucheAltde votre clavier.
Par exemple, pour ^Jles commandes signifient que l'appui sur Ctrlet J en même temps.
Sélectionner du texte
Pour sélectionner du texte, le copier et le coller :
Se déplacer avec les flèches ↑ ↓ ← → pour se placer à l'endroit voulu,
Faire Alt+A pour marquer le début de la sélection,
Se déplacer avec les flèches ↑ ↓ ← → pour sélectionner la zone de texte à copier,
Copier cette sélection avec Alt+^,
Se déplacer à l'endroit voulu pour le collage,
Coller avec Ctrl+U.
Raccourcis utiles
CTRL+A: Permet d’aller au début de la ligneCTRL+E: Permet d’aller à la fin de la ligneCTRL+Y: Permet de remonter de page en pageCTRL+V: Permet de descendre de page en pageCTRL+_: Permet de se rendre au n° de ligne indiquéCTRL+C: Permet de savoir à quel n° de ligne / colonne / caractère se trouve votre curseurCTRL+W: Permet de faire une rechercheCTRL+D: Permet de supprimer un caractèreCTRL+K: Permet de supprimer une ligne complète (comme la commande dd sous Vi)CTRL+O: Permet de sauvegarder votre fichierCTRL+X: Permet de quitter nanoCTRL+G: Affiche l’aide
Fresh
Un éditeur de texte en ligne de commande moderne et complet, sans aucune configuration requise. Raccourcis clavier familiers, prise en charge de la souris et fonctionnalités dignes d'un IDE : aucune période d'apprentissage nécessaire.
https://github.com/sinelaw/fresh
Installation
Ou téléchargez le fichier .deb manuellement depuis la page de téléchargement des versions.
curl
cURL (client URL request library) est une interface en ligne de commande, destinée à récupérer le contenu d'une ressource accessible sur internet. Il peut être utilisé en tant que client REST. cURL implémente l'interface utilisateur et repose sur la bibliothèque logicielle libcurl
Installation
Htop
htop est un moniteur système pour les systèmes d’exploitation type Unix très similaire à top, qui fonctionne également en mode Terminal, mais qui dispose d'un environnement en mode texte plus convivial que ce dernier.
Installation
Btop++
Une alternative plus graphique à top ou htop
Installation
Des thèmes sont également disponible : https://github.com/aristocratos/btop
GPing
Une alternative graphique et plus complète (multipe hosts par exemple) à la commande ping
Après l'installation, lancer gping <domaine.tld>
Installation
EZA
eza est une alternative moderne du programme de listage de fichiers ls.
Il utilise des couleurs pour distinguer les types de fichiers et les métadonnées. Il connaît les liens symboliques, les attributs étendus et Git ! Enfin, il est petit, rapide et ne comporte qu'un seul binaire :)
Après l'installation, lancer eza à la place de commande ls.
Pour connaitre la liste complète des raccourcis, taper eza --help
Installation
Liste de raccourcis
Arsenal
Un outil pour créez un inventaire de vos commandes Linux favorites
Installation
sshx
sshx est une solution pour partager votre terminal en expérience collaborative. Vous pourrez ainsi partager votre terminal aussi facilement qu’un document Google Docs, avec un simple lien.
Installation
SmokePing
SmokePing est un logiciel de surveillance réseau qui mesure et affiche graphiquement les temps de latence (temps de réponse) entre une machine et plusieurs autres cibles sur un réseau. Conçu par Tobi Oetiker, l'outil est libre et écrit en Perl.
Installation
Lancement
Configuration
Les fichiers de configuration se trouvent dans /etc/smokeping/config.d/ :
General : paramètre de base (nom, email, url cgi, etc.)
Targets : machines à surveiller
Après une modification, toujours relancer le service
Conseils utiles
Pour sécuriser l’accès web, configure un virtualhost Apache avec restriction IP ou un mot de passe
Ajoute/modifie les cibles dans
/etc/smokeping/config.d/Targetspour surveiller d’autres machines ou serveurs.
Tu devrais voir les graphiques générés par SmokePing après quelques minutes d’activité :)
HL
Visualiseur et processeur de journaux haute performance qui transforme les journaux aux formats JSON et logfmt en un format lisible par l'humain. Conçu pour une efficacité optimale, il permet une analyse rapide des fichiers journaux volumineux avec une surcharge minimale.
Tabview
Tabiew est une application TUI légère qui permet aux utilisateurs de visualiser et d'interroger des fichiers de données tabulaires, tels que CSV, Parquet, Arrow, etc.
Yazi
Un gestionnaire de fichiers dans le terminal
Installation
dua (-> Disk Usage Analyzer)
Un visualiseur d'espace disque moderne dans le terminal
Linux exige que la cible soit spécifiée explicitement pour obtenir la version MUSL.
csvlens
Ouvrir un ficher .csv depuis le terminal car pourquoi pas après tout
Liste de raccourcis
Exécutez le programme csvlens en fournissant le nom du fichier CSV :
Raccourcis clavier
Raccourci
Action
hjkl (ou ← ↓ ↑ →)
Défilez d'une ligne ou d'une colonne dans la direction indiquée.
Ctrl + f (ou Page Down)
Faites défiler une fenêtre vers le bas
Ctrl + b (ou Page Up)
Faites défiler d'une fenêtre vers le haut
Ctrl + d (ou d)
Faites défiler la moitié de la fenêtre vers le bas
Ctrl + u (ou u)
Faites défiler la moitié de la fenêtre vers le haut
Ctrl + h
Défilez d'une fenêtre vers la gauche
Ctrl + l
Défilez d'une fenêtre vers la droite
Ctrl + ←
Défilez vers la gauche jusqu'à la première colonne
Ctrl + →
Défilez vers la droite jusqu'à la dernière colonne
Ctrl + e
Afficher les lignes marquées sur la sortie standard et quitter
G (ou End)
Aller en bas
g (ou Home)
Retour en haut
n (en mode Recherche)
Passer au résultat suivant
N (en mode Recherche)
Aller au résultat précédent
TAB
Basculer entre les modes de sélection de lignes, de colonnes ou de cellules
>
Augmenter la largeur de la colonne sélectionnée
<
Réduire la largeur de la colonne sélectionnée
Shift + ↓(ou J)
Trier les lignes ou inverser le sens du tri selon la colonne sélectionnée
Ctrl + j
Identique à ce qui précède, mais triez par ordre naturel (par exemple « fichier2 » < « fichier10»).
y
Copier la ligne ou la cellule sélectionnée dans le presse-papiers
q
Sortie
Mis à jour

