B.Brodesser@t-online.de (Bernd Brodesser) schrieb am 29.12.01:
Hallo Alex,
* Alex Klein schrieb am 29.Dez.2001:
B.Brodesser@t-online.de (Bernd Brodesser) schrieb am 29.12.01:
* Alex Klein schrieb am 29.Dez.2001:
* Am 29.12.2001 zauberte Michael Rolli:
if /etc/cron.hourly/runwebalizer; then rm /etc/cron.hourly/runwebalizer fi
test -f /etc/cron.hourly/runwebalizer && rm \ /etc/cron.hourly/runwebalizer
rm -f /etc/cron.hourly/runwebalizer
Und Du bist Dir sicher, daß es ohne Abfrage besser ist? Egal ob oder ob nicht. Der Fragesteller wollte klar und deutlich eine Abfrage machen, daher biete ich ihm in meiner Lösung eine Abfrage. Zudem würde ich das auch immer so handhaben.
Nö, ich würde immer nur rm -f sagen. Vorher abfragen ob eine Datei existiert um sie zu löschen ergibt nun wirklich keinen Sinn.
Wenn ich sie absolut angebe, dann kann ich es mir sparen. Genauso kann ich es aber auch machen. Das ist Geschmackssache. Gute Argumente, die eine der beiden Meinungen vollkommen sinnlos erscheinen läßt, wird es auf beiden Seiten nicht geben. Wir können uns also dumm und dusselig schreiben.
Wenn es das gibt, wird es gelöscht, wenn nicht, dann nicht, gibt aber keine Fehlermeldung.
Daher kann man es sicherlich genauso ohne Abfrage machen. Bei anderen Kommandos ist das nicht so leicht zu handhaben. Im übrigen kann es schon eine Fehlermeldung geben. Wenn /etc/cron.hourly/runwebalizer ein Verzeichnis ist. Dann ist mein Vorschlag sinnvoller, weil der Autor des Skripts wohl immer von einer Datei ausgegangen ist. Ist weit hergeholt, ich weiß ;)
Ich weiß nicht. Die ganze Abfragerei, ob eine Datei existiert oder nicht halte ich für zimmlich übertrieben. Das SuSE das macht, ist etwas anderes. Die stehen vor einer anderen Situation. Die wissen nicht, ob irgendetwas installiert ist oder nicht. Wenn ich aber Sysadmin bin, dann weiß ich ob irgendetwas installiert ist. Wenn nicht, dann brauche ich in der Regel keine Abfrage, weil ich den ganzen Mechanismus nicht brauche. Wenn doch, dann schreibe ich ein Skript dazu, und ich weiß, das es installiert ist, da brauche ich dann nicht mehr abzufragen. Wenn wirklich mal was total schief läuft, dann kommt es zu einer Fehlermeldung. Na und? Dafür sind doch Fehlermeldungen da. Und was ist wenn eine Datei nicht existiert? Dann wird irgend eine Aktion nicht ausgeführt. Ist dann alles in Ordnung? Oder wäre im Gegenteil nicht andere Aktionen notwendig? Wenn ich eine Fehlermeldung bekomme, dann weiß ich zumindest, daß was nicht stimmt und ich muß ihr auf dem Grund gehen. Wenn vorher abgefragt wird, dann kommt keine Fehlermeldung, aber falsch ist es meist trotzdem. Und dann? Ich merke es gar nicht, oder erst viel später.
ACK.
Was anders ist, wenn etwas schlimmes passieren könnte, fals eine Datei nicht existiert. Also schlimmer als eine Fehlermeldung. Zum Beispiel bei löschaktionen. Wenn dann z.B eine falsche Datei gelöscht werden könnte oder so. Aber eine Datei, die so wie so gelöscht werden soll, da brauche ich nun wirklich nicht abzufragen.
Genau. Sowas wie cd /temp rm -f * Kann bisweilen ja bös ins Auge gehen ;) Da macht es dann unbestritten Sinn sicherheitshalber das System zu fragen, ob das mir dem cd /temp auch geklappt hat und wenn nicht einen anderen Weg einzuschlagen. <SCNR> Da Du meinst, daß man sich die Abfragerei sparen kannst, muß ich den Fragesteller schon tadeln. Die Frage war vollkommen sinnlos ;) <\SCNR> Schönen Abend Alex ______________________________________________________________________________ DSL-Stichtag ist der 31.12.2001 - Sie sparen jetzt noch 135 Euro! Highspeed-Surfen beim Testsieger + Exklusiv-Prämien: http://dsl.web.de