Re: Probleme mit bash-Script
"Ulrich Fürst" <fuerst.ulrich@vr-web.de> writes:
> ich wollte in einem Script zur Datensicherung eine Abfrage einbauen ob
> auf dem Zieldatenträger noch genügend Platz ist. Meine Lösung wäre
> folgende gewesen:
>
>> belegt=`du -sm`
>> if [ $belegt -gt 7500 ]
>> then
>>[..] echo
>> elif [ $belegt -lt 7500 ]
>
> Ich bekomme aber die Fehlermeldung "line 11: [: too many arguments" (das
> ist im Script die if-Zeile (dto. bei der anderen).
> Offensichtlich ergibt du -sm nicht eine Zahl sondern mehrere? Wie kann
> ich das verhindern?
Du brauchst doch nur du -sm von Hand ausführen, um zu sehen, dass es
mehr zurückliefert als nur eine Zahl. Da ist doch nichts Schwieriges
dran.
Eine Lösungsmöglichkeit:
set `du -sm`
if [ "$1" -gt 7500 ]; then
....
Was macht dein Skript übrigens, wenn es exakt 7500 MB sind? Gar
nichts. Irgendwie glaube ich nicht, dass das beabsichtigt ist...
Gruß,
Heike
Reply to: