Powershell 试图在SetScript DSC脚本资源中使用$using
我试图在脚本资源的setscript上使用Powershell 试图在SetScript DSC脚本资源中使用$using,powershell,resources,using,dsc,Powershell,Resources,Using,Dsc,我试图在脚本资源的setscript上使用$using,但脚本无法生成mof文件 我的代码: Script Add_Admin_Account { GetScript = { return $null; } SetScript ={ $AdminGrp=[ADSI]"Win
$using
,但脚本无法生成mof文件
我的代码:
Script Add_Admin_Account
{
GetScript = {
return $null;
}
SetScript ={
$AdminGrp=[ADSI]"WinNT://localhost/Administrators,group";
$Usr=[ADSI]"WinNT://Domain\Username,User";
$using:AdminGrp.Add($using:Usr.Path)
}
TestScript = {
$Check_User_Added = (net localgroup administrators | Select-String "Domain\Username" -SimpleMatch).ToString()
if ($Check_User_Added)
{
Write-Verbose "User $Check_User_Added is part of Admin Group";
return $true; }
else { return $false; }
}
}
如果我尝试仅使用此$using:AdminGrp.Add
将创建mof,但在尝试运行启动DScConfiguration
时它没有任何用处
另外,如果我尝试使用
第1行:$using:AdminGrp.Add
第2行:($using:Usr.Path)
mof已创建,但它具有新行的\n
当我使用$using:AdminGrp.Add($using:Usr.Path)
或$using:AdminGrp.Add()
或$using:AdminGrp.Add(
时,它无法生成mof
有什么建议吗?发现问题并修复了脚本。问题出在TestScript和SetScript上。TestScript:$usrname=$using:Node.Add_Admin_Group_Name$Check_User_Added=(net localgroup administrators |选择字符串$usrname-SimpleMatch)if($Check_User_Added-Like$usrname){详细写下“User$usrname是管理组的一部分”;return$true;}else{Write Verbose“User$usrname不属于管理组”;return$false;}SetScript:$usrname=$using:Node.Add_Admin_Group_Name([ADSI]“WinNT://./Administrators,Group”).Add(“WinNT://$usrname”)发现问题并修复了脚本。问题出现在TestScript和SetScript上。TestScript:$usrname=$using:Node.Add_Admin_Group_Name$Check_User_Added=(net localgroup administrators |选择字符串$usrname-SimpleMatch)if($Check_User_Added-Like$usrname){编写详细信息“用户$usrname是管理组的一部分”;返回$true;}else{Write Verbose“User$usrname不是管理员组的一部分”;return$false;}SetScript:$usrname=$using:Node.Add_Admin_Group_Name([ADSI]“WinNT://./Administrators,Group”).Add(“WinNT://$usrname”)