Ordner Größe auslesen und vergleichen
Hallo Liebe mit Administratoren/innen,
ich habe mal wieder ein Script Problem. Heute ist es aber mal Linux, ich habe ein simples Skript welches zu Monitoring Zwecken die Größe eines Ordners ausliest und diese mit einem eingegeben wert vergleichen soll.
Dies dient dazu damit wir feststellen können wie viel speicher ein Kunde bei uns belegt und ob eventuell sein "Paket" aufgestuft werden muss.
Das ganze läuft dann durch unsere Monitorring Software, etc...
Hier einmal das Skript:
Nun bekomme ich folgende Fehler Meldungen:
scripts/21727.sh: line 29: =: command not found
scripts/21727.sh: line 32: / 1024 : syntax error: operand expected (error token is "/ 1024 ")
scripts/21727.sh: line 33: / 1024 : syntax error: operand expected (error token is "/ 1024 ")
scripts/21727.sh: line 34 / 1024 : syntax error: operand expected (error token is "/ 1024 ")
scripts/21727.sh: line 37: =: command not found
scripts/21727.sh: line 40: [: ==: unary operator expected
scripts/21727.sh: line 43: [: -gt: unary operator expected
Quota not exceeded, used: , limit: 100 GB
Ich bin echt nicht eingearbeitet in Bash und könnte echt etwas Hilfe gebrauchen.
Danke im Voraus für jede antwort
ich habe mal wieder ein Script Problem. Heute ist es aber mal Linux, ich habe ein simples Skript welches zu Monitoring Zwecken die Größe eines Ordners ausliest und diese mit einem eingegeben wert vergleichen soll.
Dies dient dazu damit wir feststellen können wie viel speicher ein Kunde bei uns belegt und ob eventuell sein "Paket" aufgestuft werden muss.
Das ganze läuft dann durch unsere Monitorring Software, etc...
Hier einmal das Skript:
#!/bin/bash
# This scipt checks quota for specific users on specific partitions
# Parameters:
# 1 = Customer Folder Name
# 2 = Partition
# 3 = Rented space, size for warning
$1= /Kundenordner
$2= /data
$3= 100
# check if all parameters are set
if [ -z "$1" ]; then
echo "Missing parameter for username!"
exit 1001
fi
if [ -z "$2" ]; then
echo "Missing parameter for partition!"
exit 1001
fi
if [ -z "$3" ]; then
echo "Missing parameter for quota size warning!"
exit 1001
fi
#Gets folder Size in Bytes
$FolderSize = du -b $2+$1
#Converts the FolderSize Bytes to GB
$kilo="$(( $FolderSize / 1024 ))"
$mega="$(( $kilo / 1024 ))"
$giga="$(( $mega / 1024 ))"
#Gets folder Size in Human Readable
$HUFodlerSize = du -sh $2+$1
if [ $giga -eq $3 ]; then
echo "Warning Limit Reached, used: $HUFodlerSize, limit: $3 GB"
exit 1001
elif [ $giga -gt $3 ]; then
echo "Folder Size has extennded over Maximum, used: $HUFodlerSize, limit: $3 GB"
exit 1001
else
echo "Quota not exceeded, used: $HUFodlerSize, limit: $3 GB"
exit 0
fi
Nun bekomme ich folgende Fehler Meldungen:
scripts/21727.sh: line 29: =: command not found
scripts/21727.sh: line 32: / 1024 : syntax error: operand expected (error token is "/ 1024 ")
scripts/21727.sh: line 33: / 1024 : syntax error: operand expected (error token is "/ 1024 ")
scripts/21727.sh: line 34 / 1024 : syntax error: operand expected (error token is "/ 1024 ")
scripts/21727.sh: line 37: =: command not found
scripts/21727.sh: line 40: [: ==: unary operator expected
scripts/21727.sh: line 43: [: -gt: unary operator expected
Quota not exceeded, used: , limit: 100 GB
Ich bin echt nicht eingearbeitet in Bash und könnte echt etwas Hilfe gebrauchen.
Danke im Voraus für jede antwort
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 369558
Url: https://administrator.de/contentid/369558
Ausgedruckt am: 24.11.2024 um 00:11 Uhr
5 Kommentare
Neuester Kommentar