Récuperer infos d'un ps -aux

dr_octopus74 -  
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
j'aimerais récupérer les informations (processus) contenu dans la commande ps -aux.
Par exemple ,quand on fait un ps -aux, on obtient:

david 5132 0.0 0.4 5804 4328 ? Ss 21:48 0:00 /usr/bin/esd -t
david 5140 0.9 0.9 15940 9388 ? Ss 21:48 0:03 /usr/bin/metaci
david 5145 0.4 1.6 40888 16948 ? Ssl 21:48 0:01 gnome-panel --s
david 5147 1.2 2.7 82420 28400 ? Ssl 21:48 0:04 nautilus --no-d
david 5152 0.0 0.5 17592 5380 ? Ss 21:48 0:00 gnome-volume-ma
david 5161 0.0 1.0 19528 10588 ? Ss 21:48 0:00 update-notifier
david 5170 0.0 0.3 8840 3932 ? Sl 21:48 0:00 /usr/lib/gnome-
david 5174 0.0 0.8 40288 8764 ? Sl 21:48 0:00 /usr/lib/gnome-
david 5184 0.0 0.7 38028 8024 ? Ss 21:48 0:00 gnome-cups-icon
avec la dernier colonne le nom du processus

j'aimerais récupérer seulement le nom du propriétaire, l'heure d'ouverture ,et le nom du processus (soit la 1ere, la 8eme et la derniere colonne).
J'ai déja tatouiller un début de code,pour vous montrer ce que ca donnerai:
#!/bin/bash
rm -f /root/Desktop/liste.txt
ps -aux >>/root/Desktop/tmp.txt
cut -c 25-50 /root/Desktop/tmp.txt >>/root/Desktop/liste.txt rm -f /root/Desktop/tmp.txt exit

le cut coupe de la colonne 25 a 50 ,enfin je crois...
si quelqu'un a une idée, n'hésiter pas
d'avance merci !

4 réponses

lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
 
Salut,
ps aux | perl -ne '@t=split /\s+/,$_;print "@t[0,8,10]\n";' > resultat_ps
ou
ps aux|perl -ne 'print "@{[ (split /\s+/)[0,8,10] ]}\n";' > resultat_ps
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,
ps aux | awk '{ print $1,$9,$11 }' 
;-))
0
dr_octopus74
 
merci a vous 2, c'est exactement ce qu'il me fallait !
0
dubcek Messages postés 19021 Statut Contributeur 5 637
 
il est possible de ne demander à ps que les champs que l'on veut, par ex: ps -eo pid,user,args
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Mais bon sang mais c'est bien sûr... ;-))

Merci.
0