我需要在Perl中設置一個環境變量。理想情況下,我需要查詢一個變量,然後在不需要時更改它。具體來說,它是我想改變的PATH變量。如何從Perl設置Windows PATH變量?
如何獲取和設置這些變量?
我需要在Perl中設置一個環境變量。理想情況下,我需要查詢一個變量,然後在不需要時更改它。具體來說,它是我想改變的PATH變量。如何從Perl設置Windows PATH變量?
如何獲取和設置這些變量?
如果您需要更改環境變量全球和永久,因爲如果你在控制面板中設置它,那麼你必須muck with the registry(更新:現在有模塊可以做到這一點,Win32::Env和Win32::Env::Path)。請注意,在註冊表中更改變量並「廣播」更改不會更改某些當前進程中的環境變量,特別是perl.exe和cmd.exe。
如果您只是想更改當前進程(以及隨後生成的子進程),那麼全局%ENV哈希變量就是您想要的(例如$ ENV {PATH})。請參閱perldoc perlvar。
$ ENV {PATH}?
請記住,環境變量隻影響子過程,但是。你不能運行一個Perl程序,改變%ENV,然後在父進程中看到這種改變 - 環境不能這樣工作。
你可以做到這一點使用%ENV
哈希
$ENV{PATH} = 'C:\\Windows\;D:\\Programs';
LOL,我們成功地在同一秒內提交了相同的答案! :-p – 2009-02-04 18:22:50
偉大的思想家都認爲;) – jrockway 2009-02-04 18:28:04