Votre navigateur est obsolète. Téléchargez un navigateur moderne, par exemple FireFox.
Léa-Linux : Forum
Le forum de Léa abrite des discussions autour des Logiciels libres.
Syndication
  • RSS ForumForum complet
  • RSS Forum - DéveloppementForum - Développement
  • RSS Forum - Développement - 130374Cette discussion

Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Important : quand vous posez une question, n'oubliez pas de nous donner les indications suffisantes pour que nous puissions répondre. En effet, la divination n'est pas le fort du Linuxien averti. Pour une meilleure compréhension, le bon usage de la grammaire et de l'orthographe est fortement encouragé. En particulier, le langage SMS est à éviter absolument. En cas d'abus, il pourra être censuré sans autre forme de procès.
Les messages dont le contenu est illégal (incitant à la haine - raciale ou autre, diffamant), ou dont le contenu est sans rapport avec le sujet du forum, ou qui sont parfaitement stupides ou hors sujet seront supprimés sans pitié. Il pourra même être fait appel au fournisseur d'accès du coupable pour faire cesser ses agissements.
» Index du forum » Développement » Besoin d'aide pr un devoir !
Aller à la discussion: PrécédentSuivante
Action: Nouveau sujetChercherS'authentifier
Besoin d'aide pr un devoir !
Auteur: Kly (IP enregistrée)
Date: le 6 janvier 2004 à 16:34

Dans un devoir, j'ai une question à laquelle je n'arrive pas à répondre (coup de chance, c'est la seule !).

Je dois dire ce que fait EXACTEMENT cette commande :

less /etc/passwd | grep /bin/sh | sort | wc -l

Je dois dire à quoi sert chaque commande, argument, etc...

D'après ce que je sais, il me renvoi le numéro de la ligne où il trouve "/bin/sh" mais ce qui est étonnant est qu'il ne me renvoi qu'un numéro de ligne alors qu'il devrait m'en renvoyer plusieurs vu que le fichier contient plusieurs fois ça non?

Mais j'avoue que je ne comprend pas trop le rôle de "sort" et de "wc" car d'après ce que j'ai vu, "wc" est censé afficher le nombre de saut de ligne (c'est ce qui est marqué dans man wc) mais je ne vois pas trop son utilité ici.

Merci d'avance pour votre aide.

Re: Besoin d'aide pr un devoir !
Auteur: rent (IP enregistrée)
Date: le 6 janvier 2004 à 16:52

Bonjour,

less /etc/passwd | grep /bin/sh | sort | wc -l renvoie le nombre total de lignes contenant "/bin/sh.

less /etc/passwd --> affiche le fichier /etc/password
grep /bin/sh --> recherche l'expression "/bin/sh" dans ce fichier
sort --> effectue un tri croissant des lignes trouvées
wc -l --> compte le nombre de lignes trouvées

Re: Besoin d'aide pr un devoir !
Auteur: Kly (IP enregistrée)
Date: le 6 janvier 2004 à 18:57

Merci beaucoup, j'étais sur qu'il y aurait ici quelqu'un pour qui ce pb serait simple ! Mais là, une réponse 18 minutes après que j'ai posté, ça m'épate encore plus !

Re: Besoin d'aide pr un devoir !
Auteur: alveric (IP enregistrée)
Date: le 7 janvier 2004 à 12:01

D'ailleurs, cette commande est vraiment trop compliquée pour ce que ça fait.
- Le sort est inutile si on ne veut que compter des lignes.
- "less fichier | grep regexp" peut être remplacé par "grep regexp fichier"
- la commande grep comporte un option "-c" qui compte les lignes correspondantes à la regexp.

D'où, pour le fun, une optimisation:

grep -c /bin/sh /etc/passwd

Qui est plus rapide, et consomme moins de ressources (moins de processus lancés, moins de mémoire utilisée...)



Nom du forum : (antispam) - (en développement:saisir un texte pour le message, rempli cette zone automatiquement)
Votre nom: 
Votre email: 
Sujet: 

 
Ce forum est boosté par Phorum.