Search

PowerShell

PowerShell이란?

명령줄 셸스크립팅 언어 Windows에서 관리 작업을 자동화하기 위한 프레임워크로 시작
명령줄 셸?
마우스를 사용하여 그래픽 요소와 상호 작용하는 그래픽 인터페이스가 없음 → 대신, 컴퓨터 콘솔에 텍스트 명령을 입력
콘솔 사용의 이점
그래픽 인터페이스를 사용하는 것보다 빠름
명령 일괄 처리를 실행할 수 있으므로 연속 통합 파이프라인에 대한 작업 자동화에 적합
클라우드 리소스 및 기타 리소스와 상호 작용
명령 및 스크립트를 텍스트 파일에 저장하고 소스 제어 시스템을 사용. 명령들을 반복하고 모니터링할 수도 있음. 데이터베이스 변경부터 스크립트로 수행되는 변경에 이르기까지 모든 것에 적용 가능

기능

기존 셸과 일부 기능을 공유
기본 제공 도움말 시스템
파이프라인
별칭
다음과 같은 몇 가지 점에서 기존 명령줄 셸과 다름
텍스트를 통해 개체에서 작동
개체를 입력 및 출력으로 사용 → 서식 지정 및 추출에 걸리는 시간을 줄일 수 있음
cmdlet
cmdlet은 별도의 실행 파일이 아닌 공용 런타임에 빌드 → 매개 변수 구문 분석 및 파이프라인 동작에서 일관된 환경을 제공
다양한 유형의 명령
PowerShell의 명령은 네이티브 실행 파일, cmdlet, 함수, 스크립트 또는 별칭일 수 있음

cmdlet(command let)

.NET 또는 .NET Core에서 개발하고 PowerShell 내에서 명령으로 호출
동사-명사 명명 표준에 따라 이름이 지정
Verb AliasPrefix Group Description ---- ----------- ----- ----------- Add a Common Adds a resource to a container, or atta… Clear cl Common Removes all the resources from a contai…
Shell
복사
3가지 핵심 cmdlet
Get-Command
시스템에서 사용 가능한 모든 cmdlet을 나열
Get-Help
핵심 cmdlet을 실행하여 기본 제공 도움말 시스템을 호출
Get-Member
핵심 cmdlet을 실행해 응답의 많은 속성을 포함한 내용 나열

Get-Command를 사용하여 명령 찾기

Get-Command cmdlet을 실행하면, 파워셸에 설치된 모든 명령 목록이 나열 → 필요 명령을 빠르게 찾기 위해 응답을 필터링하는 방법 필요
목록을 필터링하려면, cmdlet에 대한 Get-Verb 명명 표준을 염두에 둬야함. 플래그를 사용해 원하는 명령의 동사나 명사를 대상으로 지정 가능.
-Noun
명사와 관련된 명령 이름의 일부를 대상으로 사용
Get-Command -Noun alias*
Shell
복사
명사 부분이 alias로 시작하는 모든 cmdlet을 검색
-Verb
동사와 관련된 명령 이름의 일부를 대상으로 사용
결합된 형태
훨씬 더 자세한 검색 쿼리 및 유형 생성
Get-Command -Verb Get -Noun alias*
Shell
복사
동사 부분은 Get과 일차하고 명사 부분은 alias와 일치하도록 지정