Подстановочные знаки в VisibleExternalCommands не работают в PSSessionConfiguration - PullRequest
0 голосов
/ 03 июля 2018

Я пытаюсь использовать подстановочные знаки, такие как "c: \ scripts \ *. Ps1" в VisibleExternalCommands для New-PSSessionConfigurationFile , и полученный файл .pssc выглядит нормально, но не может получить это работает, как ожидалось, и документация здесь слабая. Я могу только заставить VisibleExternalCommands работать, указав полный путь.

Действия по воспроизведению, протестировано на Win10 с PowerShell 5.1:

Каталог установки и скрипты:

Enable-PSRemoting -Force
mkdir c:\scripts
echo "Write-Output hello" | Out-File c:\scripts\hello.ps1 -Force
echo "Write-Output world" | Out-File c:\scripts\world.ps1 -Force

Использование подстановочного знака (НЕ работает):

New-PSSessionConfigurationFile -VisibleExternalCommands "c:\scripts\*.ps1" -Path c:\scripts\TestWildcard.pssc -SessionType RestrictedRemoteServer -LanguageMode FullLanguage
Register-PSSessionConfiguration -Name TestWildcard -Path c:\scripts\TestWildcard.pssc -Force
Invoke-Command . -ConfigurationName TestWildcard {c:\scripts\hello.ps1; c:\scripts\world.ps1}
# Fails to recognize both .ps1 scripts as external commands

Использование полного пути (работает нормально):

New-PSSessionConfigurationFile -VisibleExternalCommands "c:\scripts\hello.ps1" -Path c:\scripts\TestFullPath.pssc -SessionType RestrictedRemoteServer -LanguageMode FullLanguage
Register-PSSessionConfiguration -Name TestFullPath -Path c:\scripts\TestFullPath.pssc -Force
Invoke-Command . -ConfigurationName TestFullPath {c:\scripts\hello.ps1; c:\scripts\world.ps1}
# Prints hello and fails to recognize c:\scripts\world.ps1

В документации (https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/new-pssessionconfigurationfile?view=powershell-5.1) говорится, что подстановочные знаки поддерживаются, но не приводится пример этого.

Я что-то упустил или это ошибка?

...