10

Perl 内から環境変数を設定する必要があります。理想的には、変数を照会し、それが必要でない場合は変更する必要があります。具体的には、変更したい PATH 変数です。

これらの変数を取得および設定するにはどうすればよいですか?

4

3 に答える 3

15

コントロール パネルで設定したかのように、環境変数をグローバルかつ永続的に変更する必要がある場合は、レジストリをいじる必要があります(更新: これを行うためのモジュール、Win32::EnvおよびWin32::Envがあります)。 ::パス)。レジストリ内の変数を変更し、その変更を「ブロードキャスト」しても、現在の一部のプロセス (特に perl.exe と cmd.exe) の環境変数は変更されないことに注意してください。

現在のプロセス (およびその後生成された子プロセス) を変更するだけの場合は、グローバル %ENV ハッシュ変数が必要です (例: $ENV{PATH})。perldoc perlvarを参照してください。

于 2009-02-04T18:36:03.367 に答える
7

$ENV{パス}?

ただし、環境変数はサブプロセスにのみ影響することに注意してください。Perl プログラムを実行して %ENV を変更し、親プロセスでその変更を確認することはできません。環境はそのようには機能しません。

于 2009-02-04T18:22:12.850 に答える
4

%ENVハッシュを使用してそれを行うことができます

$ENV{PATH} = 'C:\\Windows\;D:\\Programs';
于 2009-02-04T18:22:13.223 に答える