본문 바로가기

Development/PowerShell

[PowerShell] 둘러보기

1. 개체 파이프라인

  - 기본적으로 uninx에서 사용하는 파이프라인과 동일한 방식으로 사용이 가능하다. 다양한 cmdlet들을 바로 사용하기 때문에 구성 자체가 매우 간단하고 전달되는 것이 단순한 Text가 아니고 .NET 객체이기 떄문에 연산 처리가 매우 쉬운 편이다. uninx의 shell에서 전달되는 값들이 단순한 Text 결과라고 볼때 앞에서의 결과같이 변경되는 위에 실행되는 프로그램들이 영향이 바로 받지만 PowerShell의 경우 .NET 객체에 대한 연산이기 때문에 변경할 사항이 없거나 미미한 편이다.


2. 자동화 참조

 - .NET 프로젝트를 생성시 자동으로 상단에 붙는 구문처럼 PoweShell 또한 자동으로 DLL이 참조된다. 물론 추가적으로 외부 DLL을 가져오는 것도 가능하다.


3. 세미콜론

 - .NET의 경우 붙는 세미콜론을 굳이 붙일 필요는 없다.


4. Return 구문

 - PowerShell 자체가 코드를 최소화하는 방향으로 개발을 하기 때문에 Return 문 또한 생략되기도 한다.


5. 데이터 형식

 - 변수의 형식을 정의할 필요가 없다. 좀더 엄격한 방식으로 변수의 형태를 받을 수 있는 방법도 있기는 하다.

 

6. 예외처리

 - 기본적으로 익히 알고 있는 예외처리는 대부분 지원한다. 사용하는 방식은 조금 다르다.

  . Break, Continue, Try/Catch/Finally


 trap { "trapped: $($error[0])"; break }

1/0

"done"

에러 발생


 trap { "trapped: $($error[0])"; continue }

1/0

"done"

에러 발생하고 "done" 출력


7. 인용규칙

  - 대부분의 프로그래밍언어에서 백슬레시(\)를 인용규칙에서 사용하지만 백틱(`)값으로 인용문을 넣을수 있다.


8. 문자열에서 PowerShell 하위 식 사용하기

 - 문자열에 임의의 PowerShell의 코드 조각을 넣어서 사용할수있다.


9. Here-String

 - 문자열 리터럴 블럭을 명시 하는 방법으로 들여쓰기 공백/ 줄바꿈 처리등을 그대로 유지 할수도 있다.

 $HereString = @"

@과 @사이에 원하는 문자열을 넣으면

들여쓰기 공백처리

줄바꿈 등을 그대로 유지 할수 있다.

"@


-ps. 주로 글을 작성하는 환경이 MAC이기 때문에 PowerShell 직접 해본거나 코딩등은 자세히 올리지는 못 할 것 같다. 일단 윈도우 환경에서 한번씩은 돌려 보는 것으로 만족하고 나중에 실제 업무에 사용할 만한것들을 별도로 올리겠다.

'Development > PowerShell' 카테고리의 다른 글

[PowerShell] 시작하기  (0) 2014.05.27