2014-09-21 3 views
1

powershell v3에서 $executionContext.SessionState.InvokeCommand.PostCommandLookupActionCommandScriptBlock을 사용하여 인수를 수정할 수 있습니다. v2에서 어떻게 똑같은 일을 할 수 있습니까?powershell v2에서 내장 명령으로 보낸 인수를 어떻게 수정합니까?

파워 쉘 3 예 : V2 (이상)에서

$executionContext.SessionState.InvokeCommand.PostCommandLookupAction = { 
    param($CommandName, $CommandLookupEventArgs) 
    if($CommandLookupEventArgs.CommandOrigin -eq "Runspace" -and $CommandName -eq "cd"){ 
     $CommandLookupEventArgs.CommandScriptBlock = { 
      if($args){ 
      $x = ModifyPathOrDoSomethingHere($x) 
      $x = Resolve-Path($args) 
      Set-Location $x 
      } 
     } 
     $CommandLookupEventArgs.StopSearch = $true 
    } 
} 

답변