Erweitern eines Archivs unter anmeldeinformationen ohne Dateiüberprüfung
Beschreibung
In diesem Beispiel wird gezeigt, wie Sie die Archive
Ressource verwenden können, um sicherzustellen, dass eine .zip
Datei auf ein bestimmtes Verzeichnis unter einem ausgewählten Konto erweitert wird. Auf diese Weise können Sie Speicherorte für das Archiv und das Ziel angeben, die eine Autorisierung für Den Zugriff und das Schreiben erfordern.
Mit "Stellen Sie sicher, Present
dass "Pfad" auf " festgelegt ist" und auf "Ziel" festgelegt C:\ExampleDestinationPath\Destination
C:\ExampleArchivePath\Archive.zip
ist, erweitert die Ressource den Inhalt Archive.zip
des Destination
Ordners, wenn sie noch nicht vorhanden sind.
Wenn die Credential-Eigenschaft auf ein Konto mit Berechtigungen für die Archive.zip
Datei und den Destination
Ordner festgelegt ist, erweitert die Ressource die .zip
Datei als dieses Konto. Wenn das Konto keine Berechtigungen für einen anderen Pfad hat, löst die Ressource einen Fehler aus.
Ohne die Eigenschaften "Validieren " oder " Prüfsummen " überprüft die Ressource nicht den erweiterten Inhalt mit den Dateien in Archive.zip
, nur dass sie vorhanden sind. Der erweiterte Inhalt im Destination
Ordner entspricht möglicherweise nicht dem Inhalt in Archive.zip
.
Mit Invoke-DscResource
Dieses Skript zeigt, wie Sie die Archive
Ressource mit dem Invoke-DscResource
Cmdlet verwenden können, um sicherzustellen Archive.zip
, dass sie auf den Destination
Ordner erweitert wird, indem Sie die Anmeldeinformationen eines angegebenen Kontos zum Lesen und Schreiben der Dateien verwenden.
[CmdletBinding()]
param(
[Parameter(Mandatory)]
[System.Management.Automation.PSCredential]
[System.Management.Automation.Credential()]
$Credential
)
begin {
$SharedParameters = @{
Name = 'Archive'
ModuleName = 'PSDscResource'
Properties = @{
Path = 'C:\ExampleArchivePath\Archive.zip'
Destination = 'C:\ExampleDestinationPath\Destination'
Credential = $Credential
Ensure = 'Present'
}
}
$NonGetProperties = @(
'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
}
}
Mit einer Konfiguration
Dieser Codeausschnitt zeigt, wie Sie einen Configuration
Archive
Ressourcenblock definieren können, um Archive.zip
sicherzustellen, dass er auf den Destination
Ordner erweitert wird, indem Sie die Anmeldeinformationen eines angegebenen Kontos zum Lesen und Schreiben der Dateien verwenden.
Configuration ExpandArchiveNoValidationCredential {
param(
[Parameter(Mandatory)]
[System.Management.Automation.PSCredential]
[System.Management.Automation.Credential()]
$Credential
)
Import-DscResource -ModuleName 'PSDscResources'
Node localhost {
Archive ExampleArchive {
Path = 'C:\ExampleArchivePath\Archive.zip'
Destination = 'C:\ExampleDestinationPath\Destination'
Credential = $Credential
Ensure = 'Present'
}
}
}
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für