我正在使用一些具有子程序的代码,该子程序包含一个数组引用作为参数之一.此传入数组中的元素可以是小数组或字符串.
我想确定每个元素的类型是为了做某些特定的事情(即,如果元素是一个数组,通过索引进一步深入,如果元素是一个字符串,请使用字符串)
我已经尝试使用该ref函数来查询每个数组元素.它似乎适用于ARRAYs的元素,但如果元素是一个字符串,我希望ref返回SCALAR.然而ref()似乎什么也没有回报.我究竟做错了什么?我认为ref()会回归一些东西.
以下是一些示例代码:
my @array = ("string1",
["ele1_arraystr1", "ele1_arraystr2"],
"string2",
["ele4_arraystr1", "ele4_arraystr2"],
"etc");
my $tmp;
&foobar( 30, 20, \@array);
sub foobar {
my($var1, $var2, $array_ref) = @_;
foreach $element (@$array_ref) {
my $tmp = ref($element);
print "Array element type: $tmp\n";
if ($tmp eq 'ARRAY') {
print " ARRAY: $element->[1]\n";
} elsif ($tmp eq 'SCALAR') {
print " SCALAR: $element\n";
} else {
print " Unexpected type: $tmp\n";
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出看起来像这样: …
我有几台外网电脑,不允许安装PS AD模块。
我想做的就是使用 Powershell 报告一些帐户锁定设置,特别是锁定阈值、锁定持续时间以及本机是否被锁定。
我在搜索过程中找到的只是使用 Active Directory PS 模块的信息。此外,还有其他涉及远程访问的参考资料。两者都不符合我的需要。
我还查找了与“本地”锁定设置相关的注册表项,但没有找到任何内容(例如,仅引用远程访问 maxDenial;而不是本地设置)。
除了启动gpedit和查看本地策略之外,我希望有一种方法可以使用 Powershell 来简单地报告当前的本地设置。
无论如何,帮助/指示/知识将不胜感激。
registry powershell policy registrykey content-security-policy