Besoin pour commande

Fermé
Ben.J - 11 déc. 2013 à 20:12
 Ben.J - 11 déc. 2013 à 21:23
Bonjour,

Voila plusieurs heures que je me casse les dents sur une question de partiel sur les systèmes d'exploitation qui est la suivante :

Ecrire une ligne de commande qui permet de compter le nombre d'utilisateurs d'une machine qui utilise un programme qui n'est pas dans le répertoire "/bin".

J'ai voulu utiliser les commande wc -l et more sur le fichier /etc/passwd, mais je ne vois pas comment afficher seulement une partie des lignes.
A moins que je ne sois parti dans une mauvaise direction.

Merci d'avance !

1 réponse

Bonsoir,

S'agit-il des utilisateurs qui utilisent un programme en temps réel ? (par exemple sur un serveur, tu cherches à savoir qui exécute une requête)

Cordialement.
0
Je ne sais pas, ce n'est pas précisé.
0
Je sais pas si la question précédente peut avoir un lien, je la donne qd même :
Donner le nom du fichier contenant les infos sur les utilisateurs du système.

J'ai répondu que c'était le fichier passwd dans /etc.
0
Ben.J,

Déjà tu as fais juste à la question :)

Alors pour la commande, j'ai fais des tests en local: ps -ef | cut -c '54-' | grep -v "^/bin"

Cette commande te liste les processus actifs sur le système ne commençant pas par /bin.

Explications:

ps -ef: Liste les processus actifs
cut -c '54-': Enlève tout ce qui se trouve avant le 54ème caractère (dans mon cas, le nom du processus commence au 54ème caractère).
grep -v "^/bin": grep permet d'afficher la particule /bin, le ^ dit que ça doit commencer par /bin
le -v indique qu'on fait l'inverse donc qu'on affiche tout ce qui commence pas par /bin.

1- On affiche les processus
2- Sur l'affichage, on garde tout ce qui est après le n caractère.
3- On garde les processus voulus.

Et voilà, j'espère que ça va t'aider, si tu peux tester c'est mieux.

PS: cut affiche en fonction des colonnes aussi si tu veux voir de ce coté car le n caractère je ne suis pas sûr que de partout ce soit 54^^.

Cordialement.
0
Ok merci bcp !!!
0