gpt4 book ai didi

powershell - 删除 PowerShell DSC 配置

转载 作者:行者123 更新时间:2023-12-04 09:24:21 25 4
gpt4 key购买 nike

一旦应用了 DSC 配置,是否可以从计算机中删除它?

例如,我有一个 configuration块如下:

configuration SevenZip {
Script Install7Zip {
GetScript = {
$7ZipFolder = '{0}\7-Zip' -f $env:ProgramFiles;
$Result = @{
Result = '';
}
if (Test-Path -Path $7ZipFolder) {
$Result.Result = 'Present';
}
else {
$Result.Result = 'Nonpresent';
}
Write-Verbose -Message $Result.Result;
$Result;
}
SetScript = {
$7ZipUri = 'http://colocrossing.dl.sourceforge.net/project/sevenzip/7-Zip/9.20/7z920-x64.msi';
$OutputFile = '{0}\7-Zip.msi' -f $env:TEMP;
Invoke-WebRequest -Uri $7ZipUri -OutFile $OutputFile;
Write-Verbose -Message ('Finished downloading 7-Zip MSI file to {0}.' -f $OutputFile);

$ArgumentList = '/package "{0}" /passive /norestart /l*v "{1}\Install 7-Zip 9.20 64-bit.log"' -f $OutputFile, $env:TEMP;
$Process = Start-Process -FilePath msiexec.exe -ArgumentList $ArgumentList -Wait -PassThru;
Write-Verbose -Message ('Process finished with exit code: {0}' -f $Process.ExitCode);
Remove-Item -Path $OutputFile;
Write-Verbose -Message ('Removed MSI file: {0}' -f $OutputFile);
}
TestScript = {
$7ZipFolder = '{0}\7-Zip' -f $env:ProgramFiles;
if (Test-Path -Path $7ZipFolder) {
$true;
}
else {
$false;
}
}
}
}

此配置块将生成使用 Script 的 MOF如果未找到应用程序,则在应用它的系统上安装 7-Zip 9.20 64 位的资源。

一旦应用了这个配置,使用下面的命令,它怎么可能是 已移除 从系统中,如果不再需要 7-Zip?
SevenZip -OutputPath c:\dsc\7-Zip;
Start-DscConfiguration -Wait -Path C:\dsc\7-Zip -Verbose;

最佳答案

要将 7zip 安装移出范围,您可以应用另一个未指定 7zip 的配置。配置不会“回滚”,因此,如果已安装,它将保持安装状态。如果稍后将其删除,则不会重新安装。

您也可以走手动路线,从 c:\windows\system32\configuration 中删除配置文件。您需要删除 Current.mof、backup.mof 和可能的 Previous.mof。

关于powershell - 删除 PowerShell DSC 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25336842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com