Frage

Ich brauche die eine Umgebungsvariable aus Perl zu setzen. Idealerweise muss ich eine Variable abfragen und dann ändern, wenn es nicht das, was erforderlich ist, ist. Insbesondere ist es die PATH-Variable I ändern möchten.

Wie kann ich erhalten und diese Variablen gesetzt?

War es hilfreich?

Lösung

Wenn Sie Umgebungsvariablen müssen global und dauerhaft ändern, als ob Sie ihn in das Bedienfeld einstellen, dann haben Sie Dreck mit der Registrierung (Update: und jetzt gibt es Module, dies zu tun, Win32 :: Env :: Pfad ). Beachten Sie, dass Variablen in der Registrierung zu ändern und „Rundfunk“ die Änderung in einigen aktuellen Prozessen nicht die Umgebungsvariablen ändern, insbesondere perl.exe und cmd.exe.

Wenn Sie nur den aktuellen Prozess geändert werden sollen (und später gelaicht Child-Prozesse), dann ist das globale% ENV Hash-Variable ist, was Sie wollen (zum Beispiel $ ENV {PATH}). Siehe Perldoc perlvar .

Andere Tipps

$ ENV {PATH}?

Beachten Sie, dass die Umgebungsvariablen nur Teilprozesse beeinflussen, jedoch. Sie können ein Perl-Programm, ändern% ENV laufen, und dann sehen, dass Veränderungen in dem übergeordneten Prozess -. Die Umwelt funktioniert nicht auf diese Art und Weise

Sie können tun, dass die %ENV Hash mit

$ENV{PATH} = 'C:\\Windows\;D:\\Programs';
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top