Probleme script "qui fait quoi"
Résolu
hugnix
Messages postés
119
Date d'inscription
Statut
Membre
Dernière intervention
-
hugnix Messages postés 119 Date d'inscription Statut Membre Dernière intervention -
hugnix Messages postés 119 Date d'inscription Statut Membre Dernière intervention -
bonjour,
je doit ecrire un script qui permet de savoit qui est loggé est ce que fait la personne sans le point dans le username et sans utiliser ni sed ni awk, en gros ça doit ressembler a ça:
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
pour l'instant j'ai trouvé ceci mais le problème c'est que je ne vois que un nom qui apparait!!!
finger -l | grep Name | cut -d":" -f3 > temp
echo " " > who_process
who | cut -d" " -f1 | while read lines
do
grep $lines temp >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp | echo "List of user(s) and process running have been save to the file who_process"
exit
j'ai essayé en déclarant une variable mais elle ne marche pas..... vrainom=$((grep $lines temp | cut -d" " -f2,3)) est-ce étonnant????
si quelqu'un peut m'aider.....
merci d'avance.
je doit ecrire un script qui permet de savoit qui est loggé est ce que fait la personne sans le point dans le username et sans utiliser ni sed ni awk, en gros ça doit ressembler a ça:
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
pour l'instant j'ai trouvé ceci mais le problème c'est que je ne vois que un nom qui apparait!!!
finger -l | grep Name | cut -d":" -f3 > temp
echo " " > who_process
who | cut -d" " -f1 | while read lines
do
grep $lines temp >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp | echo "List of user(s) and process running have been save to the file who_process"
exit
j'ai essayé en déclarant une variable mais elle ne marche pas..... vrainom=$((grep $lines temp | cut -d" " -f2,3)) est-ce étonnant????
si quelqu'un peut m'aider.....
merci d'avance.
A voir également:
- Probleme script "qui fait quoi"
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
- Script download - Télécharger - Édition & Programmation
8 réponses
Salut,
ça te conviens?
j'ai essayé en déclarant une variable mais elle ne marche pas..... vrainom=$((grep $lines temp | cut -d" " -f2,3)) est-ce étonnant????
oui
la syntaxe est variable=$(commande)
ça te conviens?
ps -eopid,tty,time,cmd,user
j'ai essayé en déclarant une variable mais elle ne marche pas..... vrainom=$((grep $lines temp | cut -d" " -f2,3)) est-ce étonnant????
oui
la syntaxe est variable=$(commande)
lami20j@deb:~$ user=$(grep root /etc/passwd) lami20j@deb:~$ echo $user root:x:0:0:root:/root:/bin/bash lami20j@deb:~$ somme=$((2+2)) lami20j@deb:~$ echo $somme 4 lami20j@deb:~$
salut,
merci pour ta réponse
j'avance doucement mais surement maintenant c'est tout les noms qui s'affiche en faisant cut -d" " -f2,3 temp >> who_process
j'ai beau me cassé la téte mais je trouve pas la solution.
pour la variable je m'était basé sur celle-ci: n=`grep $lines file_tempo | awk '{ print $3,$4 }' d'où l'idée de faire celle là
vrainom=$(grep $lines temp | cut -d" " -f2,3) étant donné que je ne peux pas utilisé awk mais c'est encore pire!!!!!
autrement tout le reste va bien, j'ai bien tout les process des différents utilisateurs qui s'affichent mais il y a juste que je n'arrive pas a insérer leur vrai nom au-dessus!!!!!!
voilà où j'en suis
finger -l | grep Name |cut -d":" -f3 > temp
echo " " > who_process
who | cut -d" " -f1 | while read lines
do
cut -d" " -f2,3 temp >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp | echo "List of user(s) and process running have been saved to the file who_process"
exit
un petite éclaircie serait la bienvenue.... :)
merci pour ta réponse
j'avance doucement mais surement maintenant c'est tout les noms qui s'affiche en faisant cut -d" " -f2,3 temp >> who_process
j'ai beau me cassé la téte mais je trouve pas la solution.
pour la variable je m'était basé sur celle-ci: n=`grep $lines file_tempo | awk '{ print $3,$4 }' d'où l'idée de faire celle là
vrainom=$(grep $lines temp | cut -d" " -f2,3) étant donné que je ne peux pas utilisé awk mais c'est encore pire!!!!!
autrement tout le reste va bien, j'ai bien tout les process des différents utilisateurs qui s'affichent mais il y a juste que je n'arrive pas a insérer leur vrai nom au-dessus!!!!!!
voilà où j'en suis
finger -l | grep Name |cut -d":" -f3 > temp
echo " " > who_process
who | cut -d" " -f1 | while read lines
do
cut -d" " -f2,3 temp >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp | echo "List of user(s) and process running have been saved to the file who_process"
exit
un petite éclaircie serait la bienvenue.... :)
Salut,
Perso c'est cette ligne qui me fait zarbi :
cut -d" " -f2,3 temp >> who_process
J'ai l'impression que tu ramasses du vent avec ça ;-\
Il ressemble à quoi ton fichier "temp" ? (affiches-en quelques lignes)
Perso c'est cette ligne qui me fait zarbi :
cut -d" " -f2,3 temp >> who_process
J'ai l'impression que tu ramasses du vent avec ça ;-\
Il ressemble à quoi ton fichier "temp" ? (affiches-en quelques lignes)
salut
Le fichier temp contient les username mais sans le point au milieu que j'ai obtenue en faisant finger -l | grep Name | cut -d":" -f3 > temp
prénom nom
prénom nom
prénom nom
...
En faisant cut -d" " -f2,3 temp j'arrivais à afficher les prénom nom et donc je pensais qu'avec cette variable ça aurait marché mais non. vrainom=$(grep $lines temp | cut -d" " -f2,3)
Et pour être franc elle me fait zarbi aussi la ligne mais c'est pas la pire que j'ai pondu... :)
Cest juste au niveau de cette ligne que je galére.
Au lieu de ça:
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
j'ai ça
Nom Prénom
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
Nom Prénom
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
j'espère que tu y vois un peu plus clair.....
Le fichier temp contient les username mais sans le point au milieu que j'ai obtenue en faisant finger -l | grep Name | cut -d":" -f3 > temp
prénom nom
prénom nom
prénom nom
...
En faisant cut -d" " -f2,3 temp j'arrivais à afficher les prénom nom et donc je pensais qu'avec cette variable ça aurait marché mais non. vrainom=$(grep $lines temp | cut -d" " -f2,3)
Et pour être franc elle me fait zarbi aussi la ligne mais c'est pas la pire que j'ai pondu... :)
Cest juste au niveau de cette ligne que je galére.
Au lieu de ça:
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
j'ai ça
Nom Prénom
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
Nom Prénom
Nom Prénom
PID TTY TIME CMD
8368 pts/0 00:00:00 vim
9544 pts/2 00:00:00 ps
j'espère que tu y vois un peu plus clair.....
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Affiche ton script dans son intégralité s'il te plaît.
Exécutes-le aussi en mode "débogage" en rajoutant "set -xv" après le "she-bang", peut être verras-tu ce qui te fait ce double "echo" du nom... ;-\
;-))
Exécutes-le aussi en mode "débogage" en rajoutant "set -xv" après le "she-bang", peut être verras-tu ce qui te fait ce double "echo" du nom... ;-\
;-))
ok j'essayerais en mode debug plus tard en attendant revoilà le script, j'ai mis la variable cette fois
finger -l | grep Name |cut -d":" -f3 > temp
who | cut -d" " -f1 | while read lines
do
vrainom=$(grep $lines temp | cut -d" " -f2,3)
echo " " > who_process
echo $vrainom >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp
echo "List of user(s) and process running have been saved to the file who_process"
exit
comme dit plus haut, en gros, je cherche une alternative a cette ligne n=`grep $lines file_tempo | awk '{ print $3,$4 }'`
pour l'instant la commande cut m'as bien aidé pour remplacer awk mais là j'galére....
finger -l | grep Name |cut -d":" -f3 > temp
who | cut -d" " -f1 | while read lines
do
vrainom=$(grep $lines temp | cut -d" " -f2,3)
echo " " > who_process
echo $vrainom >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp
echo "List of user(s) and process running have been saved to the file who_process"
exit
comme dit plus haut, en gros, je cherche une alternative a cette ligne n=`grep $lines file_tempo | awk '{ print $3,$4 }'`
pour l'instant la commande cut m'as bien aidé pour remplacer awk mais là j'galére....
ok j'essayerais en mode debug plus tard en attendant revoilà le script, j'ai mis la variable cette fois
finger -l | grep Name |cut -d":" -f3 > temp
who | cut -d" " -f1 | while read lines
do
vrainom=$(grep $lines temp | cut -d" " -f2,3)
echo " " > who_process
echo $vrainom >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp
echo "List of user(s) and process running have been saved to the file who_process"
exit
comme dit plus haut, en gros, je cherche une alternative a cette ligne n=`grep $lines file_tempo | awk '{ print $3,$4 }'`
pour l'instant la commande cut m'as bien aidé pour remplacer awk mais là j'galére....
finger -l | grep Name |cut -d":" -f3 > temp
who | cut -d" " -f1 | while read lines
do
vrainom=$(grep $lines temp | cut -d" " -f2,3)
echo " " > who_process
echo $vrainom >> who_process
echo " " >> who_process
ps -u $lines >> who_process
done
rm temp
echo "List of user(s) and process running have been saved to the file who_process"
exit
comme dit plus haut, en gros, je cherche une alternative a cette ligne n=`grep $lines file_tempo | awk '{ print $3,$4 }'`
pour l'instant la commande cut m'as bien aidé pour remplacer awk mais là j'galére....
Ca y est, j'y suis quand même arrivé, voilà le script:
finger -l | grep Name > temp
echo " " > who_process
who | cut -d" " -f1 | while read lines
do
grep $lines temp | cut -d":" -f3 >> who_process
echo " " >> who_process
ps -u $lines >> who_process
echo " " >> who_process
done
rm temp | echo "List of user(s) and process running have been saved to the file who_process"
exit
merci quand même pour votre aide, surement a bientôt, il m'en reste 1 dernier a faire, pas encore commencer qu'il me fait déjà mal la tête!
A+
finger -l | grep Name > temp
echo " " > who_process
who | cut -d" " -f1 | while read lines
do
grep $lines temp | cut -d":" -f3 >> who_process
echo " " >> who_process
ps -u $lines >> who_process
echo " " >> who_process
done
rm temp | echo "List of user(s) and process running have been saved to the file who_process"
exit
merci quand même pour votre aide, surement a bientôt, il m'en reste 1 dernier a faire, pas encore commencer qu'il me fait déjà mal la tête!
A+