Windows PowerShell 에서 사용하는 몇 가지 기본적인 Cmdlets 에 대해서 직접 실행해 보고 결과를 아래와 같이 정리하였습니다. SQL Server PowerSehll 과의 차이점에 대해서도 살펴보고자 합니다만 이건 포스팅을 따로 정리하는 게 좋겠네요.
아래 짧은 자료는 PowerShell, SQL Server PowerShell 에 대한 최소한의 개념입니다. ㅋㅋㅋ
1. PowerShell
가. Microsoft’s next-generation scripting language
나. New command-line interface (CLI)
다. Built on Microsoft .NET 2.0 Framework
라. Supports All the regular DOS command
마. Used on
- Windows XP, Vista, Server 2003/2008, SQL, Exchange Server
바. PowerShell.exe
2. SQL Server PowerShell
가. Windows Powershell Snap-ins
- SQL Server Provider, Set of cmdlets
나. Automate server administration and application deployment
다. SQLPS.EXE
가. Microsoft’s next-generation scripting language
나. New command-line interface (CLI)
다. Built on Microsoft .NET 2.0 Framework
라. Supports All the regular DOS command
마. Used on
- Windows XP, Vista, Server 2003/2008, SQL, Exchange Server
바. PowerShell.exe
2. SQL Server PowerShell
가. Windows Powershell Snap-ins
- SQL Server Provider, Set of cmdlets
나. Automate server administration and application deployment
다. SQLPS.EXE
도대체 파워셀이 뭐냐?
어떻게 생겼고 어떻게 실행하는 건지 기본 개념이라도 살펴 보자는 의미로 몇 가지 예제를 정리하였습니다.
PowerShell 스크립트 기본 예제
가. 실행 파일 : %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
나. 기본 명령 사용 예제
1) Get-Command : 아주 중요합니다! 앞으로 사용하게 될 많은 Command Type 명령어들을 확인할 수 있습니다.
2) netstat 명령을 사용해 봅니다. All regular DOS Command 지원하니까요.
3) Net Command 도 당연히~ 단, PowerShell 을 실행한 권한이 해당 서비스를 제어할 수 있는 충분한 권한이 있어야겠죠.
4) Get-Date 날짜/시간 확인과 제공 메소드의 활용
5) Get-Service : Windows Service Name 또는 DisplayName 을 검색하여 조회할 수 있습니다.
6) Get-History : 앞서 Command 에 입력했던 명령 History 도 조회 가능하답니다.
7) F7 펑션키를 누를 경우 History 정보를 조회되며 키보드 방향키를 사용하여 해당 명령을 선택할 수 있습니다.
8) Get-Process : 실행 중인 프로세스 정보를 확인할 수 있습니다. 사실 뭐 이런 것들을 Command Prompt 로 가능하죠...
9) Get-Hotfix : 설치된 Hotfix 목록을 확인해 봅니다.
10) 와우~ 연산도 됩니다. (300*2)+592/243-1234 머 이런 복잡한(?) 연산도 됩니다. ㅋㅋㅋ
11) Escaping Chracters 는 `(Backtick)을 사용해야 하며, 문자열 더하기, 배열 활용 예제입니다.
12) if 문의 활용
13) 반복문의 활용
14) 이벤트 로그의 응용 프로그램 로그를 조건에 맞게 검색해서 확인해 봅니다.
15) CSV 파일 Import/Export, Object 선택, Sort 를 통한 정렬
간단하게 살펴볼 수 있는 몇 가지 기능들을 정리해 봤습니다. Windows Server 트러블슈팅을 지원하다보면 많은 툴에 의존해서 정보를 수집하고 분석할 때가 많습니다만 파워쉘을 능숙하게 활용한다면 적은 리소스로 필요한 순간 유용한 결과을 얻을 수 있겠습니다. 뿐만 아니라 서버 관리, 자동화, 응용 프로그램 배포, SQL Server 관리까지... 창의적으로 응용해 보면 좋겠습니다.
이 녀석을 제대로 공부해 놓으면 컴퓨터를 사용하는 데 있어서 분명 손발이 편해질 게 틀림 없습니다.
[참고자료]
SQL Server PowerShell 개요
http://msdn.microsoft.com/ko-kr/library/cc281954.aspx
SQL Server 2008 PowerShell Utility
http://laigo.kr/319
Getting Started With Windows PowerShell
http://technet.microsoft.com/en-us/library/ee177003.aspx
Windows PowerShell Blog
http://blogs.msdn.com/powershell/
Microsoft SQL Server 2008 Management and Administration - SAMS
작성자 : Lai Go / 작성일자 : 2010.04.14