GNU/Linux >> Tutoriels Linux >  >> Linux

Avantages du fichier cat'ing et de la tuyauterie vers grep

Mieux vaut éviter le chat; écrivez-le de cette façon si l'édition de lignes est importante :

$ < filename grep pattern

La raison en est que pousser toutes les données via cat coûte de la mémoire et des ressources CPU. Un autre avantage de passer le nom de fichier comme argument plutôt que de rediriger stdin est qu'il permet à la commande l'option de mmap() le fichier.


Je n'arrive pas à croire que personne n'ait encore fait référence à "Useless Use of Cat" http://www.smallo.ruhr.de/award.html

Il y a un avantage discutable. Si vous avez un long pipeline, il semble un peu plus orthogonal avec cat :

cat file | command1 | command 2 | command3

Il regroupe toutes les commandes ensemble.

Bien sûr, comme d'autres l'ont dit (et je le fais)

< file command1 | command2 | command3

Effectue à peu près la même chose. Cela dit, le chat est assez petit et n'arrêtera pas votre ordinateur si vous l'utilisez quand vous n'en avez pas vraiment besoin.

Utilise normalement cat vs frapper directement un fichier ne change rien, mais cela fait une différence pour certaines commandes qui se soucient s'il y a plusieurs fichiers comme arguments, comme grep . Exemple :

cat file1 file2 | grep SOMETHING

aura une sortie différente de

grep SOMETHING file1 file2

Qui aura les noms de fichiers correspondants dans la sortie. Il y a des moments où je ne veux pas les noms de fichiers, et c'est un avantage d'utiliser cat .


Il n'y a aucun avantage. Votre curseur étant à la fin n'a pas non plus beaucoup d'importance si vous le structurez comme ceci :< inputfile grep -args foo


Linux
  1. Imprimer des lignes entre (et y compris) deux motifs ?

  2. Différence entre chat et '>' pour mettre à zéro un fichier ?

  3. Utiliser la commande Grep et localiser ?

  4. Commande grep Linux

  5. Comment grep \n dans le fichier

Commande Cat sous Linux

Manipuler du texte avec sed et grep

Comment supprimer des lignes vides dans des fichiers à l'aide de Grep, Sed et Awk

50 commandes grep productives et pratiques pour les passionnés de Linux

Rediriger strace vers le fichier

grep paires de motifs et fichier