Bonjour à tous,
En parcourant dernièrement un forum (linuxfr.org pour ne pas le citer) j’ai découvert la notion d’UUOC (Useless use of cat)
J’ai fait quelques recherches…
Il y aurait-il une bonne âme pour m’expliquer exactement pourquoi c’est mal d’utiliser cat pour visualiser le contenu d’un fichier ?
J’ai consulté ici la page WIKI consacrée à cat et à la notion d’UUOC. Elle en explique brièvement son principe et nous donne un exemple :
Et c’est là que je ne comprends pas : j’ai un fichier (.bashrc par ex) et je veux savoir si j’ai telle ou telle expression contenue dedans. Jusqu’à présent je faisais comme on me l’a appris, (et que l’on voit écrit partout : livres, magazines, cours, etc) à savoir :
$ cat .bashrc|grep green
green="\[\033[0;32m\]"
export PS1="${green}\u${WHITE}@\h: ${blue}\w${green} \\$ ${def}"
En quoi ma commande est un UUOC ?
En quoi ma commande est gourmande en termes de ressources ?
cat sert à concaténer plusieurs fichiers en un seul… certes… mais puisqu’à priori il peut aussi afficher le contenu d’un fichier… qui peut le plus, peut le moins non ?
J’ai donc, puisque c’est mal, remplacé ma commande par celles proposées par la WIKI : effectivement, les deux fonctionnent, of course…
But why ?
Je n’arrive pas à m’en expliquer le pourquoi (le principe de son fonctionnement, quoi)
Enfin, question subsidiaire, il en existe d’autres des subtilités à connaître comme ça dans le monde Unix/Linux ???
Merci d’avance pour vos éclaircissements…
Eric