MSBeta

파워쉘 세션

by 우주인 @ 2011-01-04 오후 1:12:49

파워쉘을 이용해 원격관리를 하다보면 세션에 대해 고민하는 경우가 있습니다.
Enter-PSSession 를 이용하면 직접 서버에 연결해 커맨드를 던져야 하기때문에
주로 Invoke-Command 를 이용해 처리하곤 하는데 이 Invoke-Command 는 한 스크립트 블록이
끝나면 해당 세션 역시 종료되기 때문에 코드가 긴 경우 보기에 좀 지저분해 보이는 부분이
있습니다.
이런 경우 Invoke-Command의 Session 파라미터에 세션을 생성해 사용하면 편리한 코딩을 할 수 있습니다

세션을 만드는 cmdlet은 new-pssession 이며 사용법은 아래와 같습니다.



#세션을 생성합니다.

PS > $session = new-pssession -ComputerName Server -Authentication Credential -Credential Server\account



#연결된 세션을 이용해 명령을 실행1

PS > Invoke-Command -Session $session -ScriptBlock { Import-Module -Name WebAdministration }



#연결된 세션을 이용해 명령을 실행2

PS > Invoke-Command -Session $session -ScriptBlock { New-WebAppPool site1App }


#명령수행 후 세션 삭제

PS > remove-PSSession -session $ps


참고
http://64.4.11.252/ko-kr/library/dd347706.aspx



Contact Us Use Terms RSS
Copyright © 2010 MSBeta. All rights reserved.