Aracılığıyla paylaş


Dosya doğrulaması olmadan arşivi kaldırma

Description

Bu örnekte, bir dosyanın içeriğinin Archive belirli bir .zip dizine genişletilmesini sağlamak için kaynağı nasıl kullanabileceğiniz gösterilmektedir.

Emin olun olarak ayarlandığında AbsentYol olarak ayarlanırC:\ExampleArchivePath\Archive.zip. ve Hedef olarak ayarlanırsaC:\ExampleDestinationPath\Destination, kaynak varsa klasöründen Destination içeriğini Archive.zip kaldırır.

Validate veya Checksum ayarlanmamışsa, kaynak klasöründe Archive.zipbulunan Destination tüm dosyaları kaldırır.

Invoke-DscResource ile

Bu betik, klasörde içerik olmadığından Destination emin olmak için cmdlet'iyle Archive.zipInvoke-DscResource kaynağı nasıl kullanabileceğinizi Archive gösterir.

[CmdletBinding()]
param()

begin {
    $SharedParameters = @{
        Name       = 'Archive'
        ModuleName = 'PSDscResource'
        Properties = @{
            Path        = 'C:\ExampleArchivePath\Archive.zip'
            Destination = 'C:\ExampleDestinationPath\Destination'
            Ensure      = 'Absent'
        }
    }

    $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
    }
}

Yapılandırma ile

Bu kod parçacığı, klasörde içerik Archive.zip olmadığından emin olmak için kaynak Archive bloğuyla nasıl tanımlayabileceğinizi ConfigurationDestination gösterir.

Configuration RemoveArchiveNoValidation {
    Import-DscResource -ModuleName 'PSDscResources'

    Node localhost {
        Archive ExampleArchive {
            Path        = 'C:\ExampleArchivePath\Archive.zip'
            Destination = 'C:\ExampleDestinationPath\Destination'
            Ensure      = 'Absent'
        }
    }
}