L’essor de nouveaux outils en ligne de commandes écrits en Rust

Magazine
Marque
Linux Pratique
Numéro
141
Mois de parution
janvier 2024
Spécialité(s)


Résumé

La manière d’interagir avec nos systèmes informatiques évolue sans cesse. Et pas seulement avec les interfaces graphiques, les usages via la ligne de commandes ne sont pas en reste. Cependant, malgré ces avancées, les outils en ligne de commandes que nous utilisons au quotidien semblent parfois s’accrocher au passé. C’est ici que l’essor des nouveaux outils en ligne de commandes prend tout son sens. Dynamisé par de nouveaux frameworks et outils comme rich (Python) de Textual, ou Gum et Bubbletea (Golang) de Charm, qui permettent de développer des outils CLI aux interfaces utilisateurs léchées, aussi appelés TUI (Terminal User Interface). Mais force est de constater qu’une très grande majorité de ces nouveaux outils sont développés en Rust, et viennent proposer de sérieuses alternatives voire concurrencer les outils les plus communément utilisés sous Linux. Dans cet article, nous explorerons comment ces nouvelles créations bousculent les usages établis. Préparez-vous à être surpris par ces outils modernes, qui vont à coup sûr redéfinir votre utilisation de la ligne de commandes au quotidien.


1. Introduction

Dans l’univers de la ligne de commandes et du système d’exploitation Linux, les builtins du shell et les GNU coreutils ont depuis longtemps été les piliers inébranlables dont la maîtrise a permis aux utilisateurs de contrôler leurs environnements informatiques.

Les builtins du shell, tels que cd, echo, export, et alias, font partie de l’interpréteur de commandes (shell) lui-même et sont inclus dans votre bash, ou votre zsh, etc. Ils sont essentiels pour les scripts shell et pour interagir avec le système d’exploitation directement depuis le terminal.

Les GNU coreutils, également connus sous le nom de « commandes de base » (ou simplement « utils »), sont un ensemble de programmes utilitaires fondamentaux en ligne de commandes, tels que ls, cp, rm, et mkdir. Ils sont écrits en C et font partie intégrante des distributions GNU/Linux.

Ces outils classiques ont été un socle solide pendant des décennies, mais ils commencent à...

Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne
Références

[1] https://fr.wikipedia.org/wiki/Carcinisation

[2] https://rustup.rs/

[3] https://github.com/cargo-bins/cargo-binstall

[4] https://github.com/wez/wezterm

[5] https://wezfurlong.org/wezterm/installation

[6] https://alacritty.org/

[7] https://github.com/helix-editor/helix

[8] https://docs.helix-editor.com/install.html

[9] https://github.com/helix-editor/helix/releases/latest

[10] https://zellij.dev

[11] https://connect.ed-diamond.com/linux-pratique/lphs-054/zellij-multiplexeur-de-terminaux

[12] https://starship.rs/

[13] https://www.nushell.sh/

[14] https://connect.ed-diamond.com/linux-pratique/lp-133/nushell-un-shell-en-rust-qui-decape

[15] https://connect.ed-diamond.com/linux-pratique/lphs-055/travaillez-avec-vos-propres-donnees-structurees-a-l-aide-de-nushell

[16] https://connect.ed-diamond.com/linux-pratique/lp-134/nushell-developpez-vos-scripts-et-configurez-votre-shell

[17] https://github.com/denisidoro/navi

[18] https://connect.ed-diamond.com/Linux-Pratique/lp-126/une-aide-pratique-et-personnalisee-en-ligne-de-commandes-avec-navi

[19] https://atuin.sh/

[20] https://www.nushell.sh/blog/2023-09-05-why-uu.html

[21] https://github.com/eza-community/eza

[22] https://github.com/bootandy/dust

[23] https://dystroy.org/broot/

[24] https://dystroy.org/

[25] https://github.com/sayanarijit/xplr

[26] https://github.com/kamiyaa/joshuto

[27] https://github.com/kyoheiu/felix

[28] https://github.com/sharkdp/bat

[29] https://github.com/theryangeary/choose

[30] https://github.com/sharkdp/fd

[31] https://github.com/dandavison/delta

[32] https://github.com/BurntSushi/ripgrep

[33] https://github.com/konradsz/igrep

[34] https://github.com/phiresky/ripgrep-all

[35] https://github.com/solidiquis/erdtree

[36] https://github.com/dalance/procs

[37] https://clementtsang.github.io/bottom

[38] https://github.com/blacknon/hwatch

[39] https://systeroid.cli.rs/

[40] https://github.com/crossterm-rs/crossterm

[41] https://github.com/ratatui-org/ratatui

[42] https://rust-cli.github.io/book/index.html

[43] https://github.com/rust-cli

[44] https://github.com/Rust-for-Linux

[45] https://security.googleblog.com/2021/04/rust-in-android-platform.html



Article rédigé par

Par le(s) même(s) auteur(s)

Débuter avec Proxmox Backup Server : les sauvegardes c’est pas du virtuel

Magazine
Marque
Linux Pratique
Numéro
138
Mois de parution
juillet 2023
Spécialité(s)
Résumé

Dans un monde numérique où la protection des données est primordiale, les solutions de sauvegarde et de restauration sont nombreuses. Si certaines d’entre elles sont performantes, elles sont bien souvent coûteuses et peu flexibles. Face à cette problématique, Proxmox Backup Server se démarque en proposant une alternative libre et innovante. En combinant déduplication, compression et chiffrement et grâce à une interface web conviviale, elle assure une sauvegarde efficace et sécurisée de vos machines virtuelles, conteneurs et machines physiques.

Proxmox VE : démarrez avec l’hyperviseur alternatif libre

Magazine
Marque
Linux Pratique
HS n°
Numéro
57
Mois de parution
avril 2023
Spécialité(s)
Résumé

VMware domine largement le marché de la virtualisation avec son hyperviseur de type 1, VMware ESXi. Mais vous n’êtes pas obligé de succomber au grand capital, et d’utiliser une solution propriétaire et payante pour virtualiser votre infrastructure. Dans cet article, nous allons découvrir Proxmox VE, une solution libre et gratuite de virtualisation pour votre installation personnelle comme pour vos besoins professionnels.

Gum : vos scripts avec sucre syntaxique ajouté

Magazine
Marque
Linux Pratique
Numéro
136
Mois de parution
mars 2023
Spécialité(s)
Résumé

Exécuter un script dans votre terminal n’est souvent pas synonyme d’interface utilisateur ergonomique et sexy. Vous allez me dire que ce n’est pas forcément un problème, car ce n’est pas le but. On veut un script qui fasse une chose, qui le fasse bien, et qui retourne sur la sortie standard pour pouvoir être tubé vers une autre commande. Parfois, on a quand même besoin de développer des scripts qui demandent plusieurs entrées utilisateur sur la ligne de commandes. Alors si on peut le faire facilement de manière interactive et ergonomique (avec des listes à choix multiples, champs texte, mot de passe, etc.) et qu’en plus on peut mettre tout ça en forme de jolie manière, ce serait quand même fort sympathique.

Les derniers articles Premiums

Les derniers articles Premium

Brève introduction pratique à ZFS

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Il est grand temps de passer à un système de fichiers plus robuste et performant : ZFS. Avec ses fonctionnalités avancées, il assure une intégrité des données inégalée et simplifie la gestion des volumes de stockage. Il permet aussi de faire des snapshots, des clones, et de la déduplication, il est donc la solution idéale pour les environnements de stockage critiques. Découvrons ensemble pourquoi ZFS est LE choix incontournable pour l'avenir du stockage de données.

Générez votre serveur JEE sur-mesure avec Wildfly Glow

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Et, si, en une ligne de commandes, on pouvait reconstruire son serveur JEE pour qu’il soit configuré, sur mesure, pour les besoins des applications qu’il embarque ? Et si on pouvait aller encore plus loin, en distribuant l’ensemble, assemblé sous la forme d’un jar exécutable ? Et si on pouvait même déployer le tout, automatiquement, sur OpenShift ? Grâce à Wildfly Glow [1], c’est possible ! Tout du moins, pour le serveur JEE open source Wildfly [2]. Démonstration dans cet article.

Les listes de lecture

8 article(s) - ajoutée le 01/07/2020
Découvrez notre sélection d'articles pour faire vos premiers pas avec les conteneurs, apprendre à les configurer et les utiliser au quotidien.
11 article(s) - ajoutée le 02/07/2020
Si vous recherchez quels sont les outils du DevOps et comment les utiliser, cette liste est faite pour vous.
8 article(s) - ajoutée le 02/07/2020
Il est essentiel d'effectuer des sauvegardes régulières de son travail pour éviter de perdre toutes ses données bêtement. De nombreux outils sont disponibles pour nous assister dans cette tâche.
Voir les 59 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous