Discussions et informations sur ce qui se passe dans le monde de l'informatique.
Répondre

Commandes exa (ls) fd (find)

#1Messageil y a 3 ans

Bonjour,
Je viens d'installer exa et fd par curiosité, et pour avoir l'air d'être dans l'air du temps :lol:
Si je résume ce que j'en ai compris, les commandes historiques GNU sont réécrites en rust pour diverses raisons : rapidité, sécurité, convivialité. J'en oublie surement et je n'ai pas vérifié ces assertions.
Ce qui est sûr c'est que les man sont bien plus courts, donc j'imagine que ce n'est pas un simple portage mais bien une réécriture.
J'aimerai avoir votre avis, des gens qui utilisent déjà ces commandes ou de ceux qui n'en veulent pas, de leurs avenirs éventuels au sein de manjaro, des risques potentiels à les remplacer/aliaser vis à vis des historiques (impact sur les scripts existants?).
Au plaisir de vous lire.

Commandes exa (ls) fd (find)

#2Messageil y a 3 ans

:bjr:
fbe a écrit : il y a 3 ans rapidité, sécurité, convivialité
rapidité : pas vraiment , rust n'est pas plus rapide que C
sécurité : le code rust est plus sécurisé par défaut, mais si le codeur C ne code pas avec ces pieds, les 2 programmes sont aussi sécurisés
convivialité : oui, si ils sont ré-écrits c'est pour apporter un plus mais ...

Puisque rust est relativement nouveau, beaucoup de programmeurs codent de nouveaux programmes. car ici nous avons généralement de nouveaux programmes souvent avec un look plus moderne/coloré mais pas forcément avec autant de fonctionnalités. Puisqu'ils n'ont pas forcément les mêmes fonctionnalités ils ne remplacent pas les programmes gnu mais proposent plutôt une alternative aux utilisateurs qui peuvent oui les utiliser comme alias (donc pas utilisés dans les scripts: un script ne lit pas les alias utilisateur)
ripgrep est pas mal utilisé pour remplacer grep
Existe aussi en rust lsd pour ls :roll:
J'aime bien bat pour remplacer cat

ps: on trouve aussi la même chose en go ,+ secure aussi mais pas plus rapide, comme par exemple logo-ls , duf(du) ou gotop pour top

Existe aussi des alternatives en python mais pour la rapidité ... c'est pas ça

---
Il existe des discussions pour coder en rust quelques parties de linux mais pour l'instant il n'y a rien et cela devrait rester une infime partie de linux

Commandes exa (ls) fd (find)

#3Messageil y a 3 ans

papajoke a écrit : il y a 3 ans rapidité : pas vraiment , rust n'est pas plus rapide que C
La précision est utile, ma formulation était ambiguë. C'est donc l'effet "réécriture" plutôt que le choix du langage qui génère le gain supposé dans la rapidité d'exécution.
papajoke a écrit : il y a 3 ansripgrep
bat
...
Ma liste d'essai s'allonge, ça tombe bien, le we s'annonce pluvieux :manger:
Merci pour ton retour :biere:
D'autres avis/utilisateurs :?:

Commandes exa (ls) fd (find)

#4Messageil y a 3 ans

Salut,
fbe a écrit : il y a 3 ans La précision est utile, ma formulation était ambiguë. C'est donc l'effet "réécriture" plutôt que le choix du langage qui génère le gain supposé dans la rapidité d'exécution.

Ma liste d'essai s'allonge, ça tombe bien, le we s'annonce pluvieux :manger:
Merci pour ton retour :biere:
D'autres avis/utilisateurs :?:
Quand on lit sur le site d'exa :
It’s fast
exa queries files in parallel, giving you performance on par with ls.
Ils ont du faire du parallèlisme pour être aussi performant qu'un ls classique qui ne le fait pas, sans doute pour compenser la lourdeur apportée par les nouvelles options et la gestion améliorée des couleurs.
Je m'étais intéressé à exa parce que je recherchais une alternative à ls pour la colorisation des noms de fichier, mon souci était qu'on ne peut définir une couleur pour un type de fichier, c'est d'ailleurs le cas pour d'autres outils censés remplacer ls.

Maintenant, j'en suis arrivé à un mélange d'icônes (ls-icons) et de couleurs (lscolors-git), que je peux définir, pour gagner en reconnaissance visuelle d'une liste de fichiers. Ça me convient bien, même si j'y perd un poil en rapidité.

Image


Un autre outil sympa, dfc qui est un remplaçant de df.

Commandes exa (ls) fd (find)

#5Messageil y a 3 ans

Smurf a écrit : il y a 3 ans mon souci était qu'on ne peut définir une couleur pour un type de fichier
J'ai lu dans la doc que c'était possible en jouant sur le contenu de la variable d'env LS_COLORS qui contient une liste de couples (extension, couleur). C'est juste pour partager l'info au cas où, je n'ai pas encore vérifié si la doc est à jour.
Smurf a écrit : il y a 3 ans Maintenant, j'en suis arrivé à un mélange d'icônes (ls-icons) et de couleurs (lscolors-git), que je peux définir, pour gagner en reconnaissance visuelle d'une liste de fichiers. Ça me convient bien, même si j'y perd un poil en rapidité.
La classe ce ls :maître:
La rapidité comme critère, j'y pensais plus pour une commande comme find, voir grep, mais pas pour un ls :o
Smurf a écrit : il y a 3 ans Un autre outil sympa, dfc qui est un remplaçant de df.
Hop, dans ma liste :sourire:
Merci pour ta participation :biere:

Commandes exa (ls) fd (find)

#6Messageil y a 3 ans

fbe a écrit : il y a 3 ans J'ai lu dans la doc que c'était possible en jouant sur le contenu de la variable d'env LS_COLORS qui contient une liste de couples (extension, couleur). C'est juste pour partager l'info au cas où, je n'ai pas encore vérifié si la doc est à jour.
Soit j'étais passé à côté, soit ce n'était pas implémenté à l'époque où j'avais essayé, le principe est le même pour lscolors-git, un fichier avec les correspondances "extension=couleur".
https://github.com/trapd00r/LS_COLORS
La rapidité comme critère, j'y pensais plus pour une commande comme find, voir grep, mais pas pour un ls :o
Je ne m'en rend pas vraiment compte dans mon utilisation quotidienne, mais j'avais fait l'essai avec un répertoire contenant plus de deux mille fichiers, le ls classique était plus réactif.

Ah, au fait j'utilise fd dans Ulauncher sous forme d'extension.

https://ext.ulauncher.io/-/github-brpaz ... ile-search
Répondre