이 PowerShell 스크립트는 자체적으로 호출합니다 (스크립트의 1 단계는 GAC에서 어셈블리를로드하므로 AppDomain이 새로 고쳐 져야 함). 스위치 매개 변수를 self에 어떻게 전달합니까? 현재이 작업을 수행 중입니다.Powershell이 스위치 매개 변수를 자체에 전달합니다.
if ($provisionsites -eq $true)
{
powershell $currentDirectory/Deploy.ps1 -reload:$true -env:$env -provisionsites
}
else
{
powershell $currentDirectory/Deploy.ps1 -reload:$true -env:$env
}
너무 길어 보입니다. 내가 이것을 시도하는 경우 :
값 "선택 System.String" 를 입력 할 수 변환 할 수 없습니다 "System.Management.Automat ion.SwitchParameter
그래서 & 연산자를 사용하면 앱 도메인도 새로 고칩니다. 티는 바로 가기입니까, 아니면 차이가 있습니까? – Luis
'&'는'powershell'의 지름길이 아닙니다. 그것은 스크립트 나 함수 인 경우 새로운 범위에서 연산자를 "호출합니다"(동일한 범위에서'.' 연산자 == 호출과는 대조적으로)입니다. 명령 자체가 평가 된 표현식의 결과이기 때문에 어떤 경우에는 생략 할 수 있지만 사용자의 경우에는 사용할 수 없습니다. "응용 프로그램 도메인도 새로 고칩니다."에 대한 귀하의 Deploy.ps1이 무엇인지 모르겠습니다. 사실, 아마 ** 당신은 ** powershell을 통해 별도의 powershell 프로세스를 시작하는 것을 의미합니다. 그래서 "확실하게"라는 단어로 대답을 시작한 것입니다. 확실하지 않았습니다. –
GAC에 어셈블리를 배포하고 있는데, 스크립트의 2 단계에서 잠재적으로 참조하는 어셈블리이므로 응용 프로그램 도메인을 새로 고치는 데 새로운 powershell 프로세스가 필요한 이유는 무엇입니까? 귀하의 답변을 주셔서 감사합니다. – Luis