2009-04-23 6 views

Antwort

3

In den meisten Skripten, die ich schreibe, erlaube ich beiden mit den Kommandozeilenparametern Vorrang.

Dies ist, um "faulen" Benutzer zu ermöglichen, die die Parameter nicht setzen möchten, um dies zu tun.

Es erlaubt auch das Überfahren dieser Parameter in speziellen Fällen über die Befehlszeile.

Für diejenigen, die nicht das Risiko eingehen wollen, dass ihre Parameter falsch eingestellt sind, können sie nur Parameter verwenden.

Manchmal werde ich noch mehr Ebene in der Hierarchie hat, in der Rangfolge:

  • Wert gesetzt, während Programm läuft.
  • Befehlszeilenparameter.
  • Umgebungsvariable.
  • Lokale Konfigurationsdatei.
  • Globale Konfigurationsdatei.
  • Standard.

diese Weise für jedes Variable, arbeiten Sie gerade Ihren Weg bis diese Liste, um es zu dem entsprechenden Wert, wenn es da ist.

1

Ich schlage vor, Sie Befehlszeilenparameter bevorzugen über Umwelt vars, es sei denn

  • Sie Werte benötigen, die über Befehle bestehen bleiben.
  • Sie benötigen systemweite globale Werte

Foredecker

1

immer Parameter bevorzugen, wenn Sie können.

Aber sagen Sie, Sie haben Script1, das Script2 aufruft. Beide Skripte werden an viele Benutzer verteilt. Script2 benötigt je nach Benutzer möglicherweise andere Parameter, und die Benutzer wollen oder wollen Script1 aus irgendeinem Grund nicht ändern. Dies ist ein Fall, in dem Umgebungsvariablen nützlich sein könnten.

Verwandte Themen