Rozbalení archivu s povoleným výchozím ověřením souboru a přepsáním souboru
Description
Tento příklad ukazuje, jak pomocí Archive
prostředku zajistit .zip
, aby se soubor rozbalil do určitého adresáře a rozbalený obsah odpovídal obsahu v .zip
souboru.
Pokud je nastavená možnost ZajistitPresent
, cesta je nastavená na C:\ExampleArchivePath\Archive.zip
a cíl nastavená na C:\ExampleDestinationPath\Destination
, prostředek rozbalí obsah Archive.zip
Destination
složky, pokud tam ještě nejsou.
S Validate nastavena na $true
a Checksum není nastavena, prostředek porovná vlastnost LastWriteTime každého rozbaleného souboru proti vlastnosti LastWriteTime příslušného souboru v Archive.zip
. Pokud hodnoty libovolného obsahu ve Destination
složce neodpovídají hodnotě ve Archive.zip
složce, prostředek je mimo požadovaný stav.
Pokud je hodnota Force nastavená na $true
, prostředek přepíše všechny rozbalené soubory nesprávným lastWriteTime. Pokud je nastavená $false
hodnota Force, prostředek místo přepsání souborů vyvolá výjimku.
S Invoke-DscResource
Tento skript ukazuje, jak můžete použít Archive
prostředek s rutinou Invoke-DscResource
, abyste zajistili Archive.zip
, že se rozbalí do Destination
složky s výchozím ověřením.
[CmdletBinding()]
param()
begin {
$SharedParameters = @{
Name = 'Archive'
ModuleName = 'PSDscResource'
Properties = @{
Path = 'C:\ExampleArchivePath\Archive.zip'
Destination = 'C:\ExampleDestinationPath\Destination'
Validate = $true
Force = $true
Ensure = 'Present'
}
}
$NonGetProperties = @(
'Validate'
'Force'
'Ensure'
)
}
process {
$TestResult = Invoke-DscResource -Method Test @SharedParameters
if ($TestResult.InDesiredState) {
$QueryParameters = $SharedParameters.Clone()
foreach ($Property in $NonGetProperties) {
$QueryParameters.Properties.Remove($Property)
}
Invoke-DscResource -Method Get @QueryParameters
} else {
Invoke-DscResource -Method Set @SharedParameters
}
}
S konfigurací
Tento fragment kódu ukazuje, jak můžete definovat Configuration
s blokem Archive
prostředků, abyste měli jistotu Archive.zip
Destination
, že se rozbalí do složky s výchozím ověřením.
Configuration ExpandArchiveDefaultValidationAndForce {
Import-DscResource -ModuleName 'PSDscResources'
Node localhost {
Archive ExampleArchive {
Path = 'C:\ExampleArchivePath\Archive.zip'
Destination = 'C:\ExampleDestinationPath\Destination'
Validate = $true
Force = $true
Ensure = 'Present'
}
}
}
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro