1
다른 스크립트를 시작하고 매개 변수를 전달하는 PowerShell 스크립트가 있습니다.변수의 시작 - 작업 스크립트 블록 전달
스크립 :
start-job -name EnableAutoUnlock -scriptblock {Invoke-Command -script { C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "\\Path\To\Script\EnableAutoUnlock.ps1" $VolumeDriveLetter }}
ScriptB을 :
[CmdletBinding()]
Param (
[Parameter(Position=0)]
[string]$drive
)
<do stuff with $drive here>
$VolumeDriveLetter
단지이다 내가 두 번째 스크립트가 완료 될 때까지 기다리고 싶지 않는 나는 Start-Job
이 작업을 수행 처리 된 드라이브 문자 (예 : "C :")
불행히도 $VolumeDriveLetter
에 예상 값이 있지만 매개 변수를 변수로 전달하는 것이 작동하지 않지만 입력하면 올바르게 작동합니다.
작품 : ScriptB 출력이 비어
내가 놓친 거지로 전달 된 변수는 변수의 통과 얻을 :
start-job -name EnableAutoUnlock -scriptblock {Invoke-Command -script { C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "\\Path\To\Script\EnableAutoUnlock.ps1" C: }}
이
$VolumeDriveLetter = "C:"
start-job -name EnableAutoUnlock -scriptblock {Invoke-Command -script { C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "\\Path\To\Script\EnableAutoUnlock.ps1" $VolumeDriveLetter }}
EDIT 작동하지 않습니다 일하다?
감사하지만 난 그냥 그 불행히도 (이전과 동일, ScriptB에 의해 recieved 매개 변수가 그냥 비어 있습니다) 작동하지 않습니다 시도했습니다 –
고마워, 내가 편집 된 답변을 사용하고 완벽하게 일했습니다 –