Sim*_*ett 3 windows perl environment-variables
我想(需要)从检查某些环境变量的perl脚本启动一个子进程.在一个实例中,环境变量需要存在但是为空.
$ENV{"GREETING"} = "Hello World"; # Valid
$ENV{"GREETING"} = ""; # also valid
Run Code Online (Sandbox Code Playgroud)
我可以设置$ ENV {"GREETING"} =""; 在那个perl脚本中,$ ENV {"GREETING"}是空的,但在任何子流程中,环境变量都不存在.
这是一些示例代码来演示.这个脚本env_in.pl设置了一些环境变量,ZZZ_3为空.然后它调用env_out.pl来输出环境变量,输出中缺少ZZZ_3.
#!/usr/bin/perl
# env_in.pl
use strict;`enter code here`
use warnings;
$ENV{ZZZ_1} = "One";
$ENV{ZZZ_2} = "Two";
$ENV{ZZZ_3} = "";
$ENV{ZZZ_4} = "Four";
my (@cmd) = ("perl", "env_out.pl");
system(@cmd) == 0 or die "system @cmd failed: $?";
Run Code Online (Sandbox Code Playgroud)
这是env_out.pl脚本.
#!/usr/bin/perl
use strict;
use warnings;
print ($_," = ", $ENV{$_}, "\n") for (sort keys %ENV);
Run Code Online (Sandbox Code Playgroud)
我在WinXP盒子上使用ActiveState perl版本v5.8.8.
我知道这可以在python中工作,但我没有选择实现语言,它必须是Perl.
| 归档时间: |
|
| 查看次数: |
670 次 |
| 最近记录: |