본문 바로가기

Server Story..../PowerShell

파워쉘의 기본문법1






[변수]

파워쉘의 기본 변수는 아래와 같습니다

$변수명

$i = 1

$i.GetType()



IsPublic IsSerial Name                                     BaseType                                                   
-------- -------- ----                                     --------                                                   
True     True     Int32                                    System.ValueType                                           



우왕 굿?


$i = 'kkk'

$i.GetType()


IsPublic IsSerial Name                                     BaseType                                                   
-------- -------- ----                                     --------                                                   
True     True     String                                   System.Object         

우왕 굿?

$i | Get-Member


Name             MemberType            Definition                                                                     
----             ----------            ----------                                                                     
Clone            Method                System.Object Clone(), System.Object ICloneable.Clone()                       
CompareTo        Method                int CompareTo(System.Object value), int CompareTo(string strB), int IComparab...
Contains         Method                bool Contains(string value)               

....

Length           Property              int Length {get;} 


엄청 많은 string의 속성들


 $i.Substring(1,2)

'kk'

헉... 굿

그냥 c# 스크립트라는 이름이 더 잘 어울릴듯...

이제 좀더 복잡한 배열의 단계로 넘어갑시다

$i = 1,2,3

$i.GetType()


IsPublic IsSerial Name                                     BaseType                                                   
-------- -------- ----                                     --------                                                   
True     True     Object[]                                 System.Array   


그렇습니다, c#에서 겁내 복잡하던 문법이 스크립트의 세계에서는 겁나 단순합니다

심지어 이런것도

$i = 1,'kakao'

좀더 적확하게 위 문장을 표현하면

$i = @(1,'kakao')

두가지는 동일합니다

이제 이런걸 해봅시다

$i = 1,2,@('사과','바나나')

$i[2][0]

>사과

zero-base로 시작되는군요

$i = 3,1,2
$i | Sort-Object

>1
>2
>3

그냥 해본 Sort-Object

$한글변수 = 1

$한글변수

> 1

한글 변수도 매우 잘되는군요

[System.Convert]::ToInt32('32')

> 32

변수와는 상관없지만 뜬금없는 .NETFRAMEWORK 사용

다음편에 해쉬를.... 살펴보겠다능...