Кто-нибудь знает, как получить текущую рабочую папку DSC?Как получить текущую рабочую папку Windows DSC (например, « DSC.0»)?
На сервере, при запуске DSC, он генерирует stucture папку вроде следующего:
C: \ Packages \ Plugins \ Microsoft.Powershell.DSC \ 2.18.0.0 \ DSCWork \ DSC.0
Единственная проблема, когда DSC получает новую версию, она увеличивает «.X» папку .. Однако, когда работает DSC, нет четкого способа, как решить текущую папку из блока сценария предсказуем:
Script GetDscCurrentPath
{
TestScript = {
return $false
}
SetScript ={
Write-Verbose (Get-Item 'C:\%path_to_dsc%\FileInsideMyDscAsset.txt')
}
GetScript = { @{Result = "GetDscCurrentPath"} }
}
Мысли? Заранее спасибо!!!
Я обновил данные за редактирование, которое вы попытались. Я не согласен с комментариями рецензентов. – TravisEz13
+1 В каждой другой ситуации я видел '$ scriptPath = Split-Path $ MyInvocation.MyCommand.Path', рекомендованный как способ получить рабочий путь. Однако внутри движка DSC происходит сбой «Split-Path» и ваш метод работает. – sirdank
'$ PSScriptRoot' был добавлен в более позднюю версию PowerShell, но он был там вместе с DSC. Это намного проще использовать. – TravisEz13