Bonjour,
j'ai un exercice a faire et j'ai besoin d'aide ; ils me demande d'écrire un script en 4 shells qui parcourt l'ensemble des processus de l'utilisateur passé en paramètre et qui affiche leur état respectif .
Voici ce que j'ai trouvé pour le moment mais apparemment quand j'exécute le script il passe pas en else genre il passe que par cette partie du code if ( test $# -eq 0 )
alors
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 #!/bin/bash if ( test $# -eq 0 ) then echo 'Erreur sy' else ps hU $1 -o state,comm > tempfile number=$(wc -l < tempfile) i=1 while [ $i -le $number ] do commande=$( tail -$i tempfile | head -1 | cut -d" " -f2 ) etat=$(tail -$i tempfile | head -1 | cut -d" " -f1 ) let i=i+1 echo -n " $commande :" case $etat in D) echo "endormi => ininterptuble" ;; S) echo "endormi" ;; R) echo "en cours" ;; T) echo "stop" ;; Z) echo "zombie" ;; *) echo "inconnu" ;; esac done rm tempfile fi
Partager