parent
105f3ff46c
commit
fd92592b7e
@ -0,0 +1,66 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
doc() {
|
||||||
|
cat << EOF >&2
|
||||||
|
Affiche le nombre de processus de chaque utilisateur possédant au moins
|
||||||
|
1 processus dans le système.
|
||||||
|
|
||||||
|
usage : \`basename $0\` \[ -h \]
|
||||||
|
|
||||||
|
-h : affiche cette aide.
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
doc
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# 1. Compte le nombre de processus de l'utilisateur dont le login est passé en argument.
|
||||||
|
# 2. $1 : le login.
|
||||||
|
# 3. stdout : le nombre de processus de l'utilisateur.
|
||||||
|
processOneUser() {
|
||||||
|
# Les remarques indiquées dans la fonction processAllUsers
|
||||||
|
# s'appliquent également à cette fonction
|
||||||
|
|
||||||
|
### A COMPLETER (1 ligne) ###
|
||||||
|
}
|
||||||
|
|
||||||
|
# 1. Affiche le tableau (non trié) du nombre de processus par utilisateur.
|
||||||
|
# 2. Pas d'argument.
|
||||||
|
# 3. stdout : le tableau.
|
||||||
|
processAllUsers() {
|
||||||
|
|
||||||
|
# traitement
|
||||||
|
# ----------
|
||||||
|
# début
|
||||||
|
# L<-liste des utilisateurs possédant un processus en mémoire
|
||||||
|
# pour i élément de L faire
|
||||||
|
# n=nombre de processus de l'utilisateur i dans le système
|
||||||
|
# afficher "i n"
|
||||||
|
# fin pour
|
||||||
|
# fin
|
||||||
|
|
||||||
|
# Remarques :
|
||||||
|
# 1. pour obtenir la liste des propriétaire des processus, utilisez la
|
||||||
|
# commande : ps h -eo user
|
||||||
|
# 2. Pour éliminer les doublons d'une liste filtrez la avec la commande :
|
||||||
|
# sort -u.
|
||||||
|
|
||||||
|
### A COMPLETER (5 lignes) ###
|
||||||
|
}
|
||||||
|
|
||||||
|
# Début du traitement des arguments.
|
||||||
|
while [ $# -ne 0 ]; do
|
||||||
|
case $1 in
|
||||||
|
-h|--help)
|
||||||
|
doc
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
*) usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
# Fin du traitement des arguments.
|
@ -0,0 +1,22 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
while [ $# -ne 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
'-user')
|
||||||
|
l=$2
|
||||||
|
shift 2
|
||||||
|
if [ "$2" = 0 ]; then
|
||||||
|
echo "manque le nom d'utilisateur" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo $(ps -U)
|
||||||
|
echo $(find -name "$l")
|
||||||
|
if [ $? -ne 0 ] ; then
|
||||||
|
echo "aucun utilisateur avec ce nom n'a été trouvé !!"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Argument $1 inconnu" >&2 && exit 2
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
Loading…
Reference in new issue