Envoyé par
karamaster
1ère fonction
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| function checkSpaceDisk()
{
#Extraction du nom des disques installés
for DISK in $(df -x tmpfs -x devtmpfs |grep dev |awk -F { print $1} |cut -d/ -f 3)
Do
#Espace disque utilisé
espaceUtilise=$(df |grep grep -w « $DISM » |awk -F '' '' { print $5})
#Espace disque total. Valeur retournée à la caractère G à la fin donc j'extrais les chiffres
espaceTotal=$(df -x tmpfs -x devtmpfs |grep dev |awk -F '' '' { print $2}) |grep '-o [[:digit:]])')
if [[ '' $espaceUtilise '' -eq '' espaceTotal '' ]]; then
Echo « Le disque $DISK est plein »
Fi
done
} |
Message d'erreur
512 : nombre entier attendu comme expression
Le formatage de ton fichier est très très étrange. Peut-être est-ce le résultat d'une copie de Windoze ou un passage par W0RD ?
Comme dit N_BaH, il faut absolument corriger TOUS les guillemets typographiques et autres apostrophes et anti-apostrophes.
Par exemple, il faut changer:
awk -F ‘’ ‘’ ‘{ print $1}’ # avec des apostrophes typographiques (obliques à gauche et obliques à droite)
en
awk -F " " '{ print $1}' # avec des guillemets ascii et des apostrophes bien verticales
ou
awk -F ' ' '{ print $1}' # avec des apostrophes bien verticales
(j'ai fait exprès de ne pas utiliser la balise CODE pour qu'on voie bien les caractères erronés de ton code)
En plus de toutes les corrections pour le remettre correctement (si ce n'est déjà fait), comme le "grep grep" redoublé, il est possible que l'erreur 512 vienne de la ligne 13 (qui porte malheur) où je remplacerais:
if [[ '' $espaceUtilise '' -eq '' espaceTotal '' ]]; then # avec des apostrophes doublées et un manque de dollar
par
if test "$espaceUtilise" -eq "$espaceTotal"; then # avec des vrais guillemets d'informaticien et un petit dollar de plus
Tu noteras que la couleur des 2 bouts de code est différente dans ton navigateur.
Partager