변수 정보
- 2020 년 11 월 9 일
- 읽는 데 9 분
-
- S
- s
- q
간단한 설명
변수가 PowerShell에서 사용할 수있는 값을 저장하는 방법을 설명합니다.
긴 설명 h2>
모든 유형의 값을 PowerShell 변수에 저장할 수 있습니다. 예를 들어 명령의 결과를 저장하고 이름, 경로, 설정 및 값과 같은 명령 및 표현식에 사용되는 요소를 저장합니다.
변수는 값이 저장되는 메모리 단위입니다. PowerShell에서 변수는 달러 기호 ($
)로 시작하는 텍스트 문자열로 표시됩니다 (예 : $a
, 또는 $my_var
.
변수 이름은 대소 문자를 구분하지 않으며 공백과 특수 문자를 포함 할 수 있습니다. 그러나 변수 이름은 특수 문자 및 공백 포함은 사용하기 어렵고 피해야합니다. 자세한 내용은 특수 문자를 포함하는 변수 이름을 참조하세요.
PowerShell에는 여러 유형의 변수가 있습니다.
-
사용자가 만든 변수 : 사용자가 만든 변수는 사용자가 만들고 유지 관리합니다. 기본적으로 PowerShell 명령 줄에서 만든 변수는 PowerShell 창이 열려있는 동안에 만 존재합니다. PowerShellwindows가 닫히면 변수는 다음과 같습니다. 변수를 저장하려면 PowerShell 프로필에 추가하세요. 전역, 스크립트 또는 로컬 범위를 사용하여 스크립트에서 변수를 만들 수도 있습니다.
-
자동 va riables : 자동 변수는 PowerShell의 상태를 저장합니다. 이러한 변수는 PowerShell에 의해 생성되며 PowerShell은 정확성을 유지하기 위해 필요한 값을 변경합니다. 사용자는 이러한 변수의 값을 변경할 수 없습니다. 예를 들어
$PSHOME
변수는 PowerShell 설치 디렉터리의 경로를 저장합니다.자세한 내용은 목록 및 자동 변수에 대한 설명은 about_Automatic_Variables를 참조하십시오.
-
기본 설정 변수 : 기본 설정 변수는 PowerShell에 대한 사용자 기본 설정을 저장합니다. 이러한 변수는 PowerShell에 의해 생성되고 기본값으로 채워집니다. 사용자는 예를 들어
$MaximumHistoryCount
변수는 세션 기록의 최대 항목 수를 결정합니다.자세한 내용, 목록 및 설명은 환경 설정 변수는 about_Preference_Variables를 참조하십시오.
변수 작업
새 변수를 만들려면 할당 문을 사용하여 변수에 값을 할당합니다. 변수를 사용하기 전에 선언 할 필요가 없습니다. 모든 변수의 기본값은 $null
입니다.
PowerShell 세션의 모든 변수 목록을 가져 오려면 다음을 입력하십시오. Get-Variable
. 변수 이름은 변수를 참조하는 데 사용되는 선행 달러 ($
) 기호없이 표시됩니다.
예 :
변수는 명령 결과를 저장하는 데 유용합니다.
예 :
받는 사람 변수 값을 표시하고 변수 이름 앞에 달러 기호 ($
)를 입력합니다.
예 :
값을 변경하려면 변수의 값을 지정하고 변수에 새 값을 할당합니다.
다음 예제에서는 $MyVariable
변수의 값을 표시하고 변수의 값을 변경 한 다음 표시합니다. 새 값입니다.
변수 값을 삭제하려면 Clear-Variable
cmdlet을 사용하거나 값을 변경합니다. ue to $null
.
변수를 삭제하려면 , Remove-Variableor Remove-Item을 사용합니다.
변수 유형
정수, 문자열, 배열 및 해시 테이블을 포함하여 모든 유형의 개체를 변수에 저장할 수 있습니다. 그리고 프로세스, 서비스, 이벤트 로그 및 컴퓨터를 나타내는 개체입니다.
PowerShell 변수는 형식이 느슨하므로 특정 개체 유형으로 제한되지 않습니다. 단일 변수는 컬렉션을 포함 할 수도 있습니다. 또는 다른 유형의 객체를 동시에 배열합니다.
변수의 데이터 유형은 변수 값의 .NET 유형에 의해 결정됩니다. 변수의 객체 유형을 보려면 Get- Member.
예 :
유형 속성과 캐스트 표기법을 사용하여 변수가 특정 개체 유형 또는 해당 유형으로 변환 할 수있는 개체 만 포함 할 수 있도록 할 수 있습니다.다른 유형의 값을 할당하려고하면 PowerShell은 값을 해당 유형으로 변환하려고합니다. 유형을 변환 할 수 없으면 대 입문이 실패합니다.
캐스트 표기법을 사용하려면 변수 이름 (대 입문 왼쪽) 앞에 대괄호로 묶인 형식 이름을 입력합니다. 다음 예 정수만 포함 할 수있는 $number
변수, 문자열 만 포함 할 수있는 $words
변수 및 변수는 DateTime 개체 만 포함 할 수 있습니다.
명령 및 식에서 변수 사용
명령 또는 식에서 변수를 사용하려면 변수 이름 앞에 달러 ($
) 기호를 입력합니다.
변수 이름과 달러 기호가 따옴표로 묶여 있지 않거나 큰 따옴표 ("
)로 묶여 있으면 t 변수의 값은 명령 또는 표현식에 사용됩니다.
변수 이름과 달러 기호가 작은 따옴표 ("
)로 묶여 있으면 변수 이름이 표현식에 사용됩니다.
PowerShell에서 따옴표를 사용하는 방법에 대한 자세한 내용은 about_Quoting_Rules를 참조하세요.
이 예는 $PROFILE
변수는 PowerShell 콘솔에있는 PowerShell 사용자 프로필 파일의 경로입니다.
예를 들어, notepad.exe에서 PowerShell 프로필을 열 수있는 두 개의 명령이 표시됩니다. 큰 따옴표 ("
) 표시가있는 예는 변수 “svalue를 사용합니다.
다음 예에서는 작은 따옴표 ("
)는 변수를 리터럴 텍스트로 처리하는 표시입니다.
특수 문자를 포함하는 변수 이름
변수 이름은 달러 ( $
) 부호를 지정하고 영숫자 문자와 특수 문자를 포함 할 수 있습니다. 변수 이름 길이는 사용 가능한 메모리에 의해서만 제한됩니다.
가장 좋은 방법은 변수 이름에 영숫자 문자 만 포함하고 밑줄 (_
) 문자. 공백 및 기타 특수 문자를 포함하는 변수 이름은 사용하기 어렵고 피해야합니다.
영숫자 변수 이름에는 이러한 문자가 포함될 수 있습니다. :
- 다음 범주의 유니 코드 문자 : Lu, Ll, Lt, Lm, L o 또는 Nd.
- 밑줄 (
_
) 문자 - 물음표 (
?
) 문자.
다음 목록에는 유니 코드 범주 설명이 포함되어 있습니다. 자세한 내용은 UnicodeCategory를 참조하십시오.
- Lu-UppercaseLetter
- Ll-LowercaseLetter
- Lt-TitlecaseLetter
- Lm-ModifierLetter
- Lo-OtherLetter
- Nd-DecimalDigitNumber
공백이나 특수 문자를 포함하는 변수 이름을 만들거나 표시하려면 변수 이름을 곱슬 머리로 묶습니다. 중괄호 ({}
) 문자. 중괄호는 PowerShell이 변수 이름의 문자를 리터럴로 해석하도록 지시합니다.
특수 문자 변수 이름에는 다음 문자가 포함될 수 있습니다.
예를 들어 다음 명령은 save-items
라는 변수를 만듭니다. 변수 이름에는 다음이 포함되므로 중괄호 ({}
)가 필요합니다. 하이픈 (-
) 특수 문자
다음 명령은 ProgramFiles(x86)
환경으로 표시되는 디렉토리의 하위 항목을 가져옵니다. nment 변수.
중괄호를 포함하는 변수 이름을 참조하려면 변수 이름을 중괄호로 묶고 백틱 문자를 사용하여 중괄호를 이스케이프합니다. 예를 들어 this{value}is
라는 변수를 만들려면 다음을 입력합니다.
변수 및 범위
기본적으로 변수는 생성 된 범위에서만 사용할 수 있습니다.
예를 들어 함수에서 생성 한 변수는 사용 가능합니다. 스크립트에서 생성 한 변수는 스크립트 내에서만 사용할 수 있습니다. 스크립트를 도트 소싱하면 변수가 현재 범위에 추가됩니다. 자세한 내용은 about_Scopes를 참조하세요.
다음을 사용할 수 있습니다. 변수의 기본 범위를 변경하는 범위 수정 자입니다. 다음 표현식은 Computers
라는 변수를 생성합니다. 변수는 스크립트 또는 함수에서 생성 된 경우에도 전역 범위를 갖습니다.
세션 밖에서 실행되는 스크립트 또는 명령의 경우 변수를 포함하려면 Using
범위 수정자가 필요합니다. 세션 코드 외부에서 액세스 할 수 있도록 호출 세션 범위의 값.
자세한 내용은 about_Remote_Variables를 참조하세요.
변수 저장
생성 한 변수 생성 한 세션에서만 사용할 수 있습니다. 세션을 닫으면 손실됩니다.
시작하는 모든 PowerShell 세션에서 변수를 만들려면 PowerShell 프로필에 변수를 추가합니다.
예를 들어 값을 변경하려면 everyPowerShell 세션에서 $VerbosePreference
변수의 PowerShell 프로필에 다음 명령을 추가합니다.
다음을 추가 할 수 있습니다. notepad.exe와 같은 텍스트 편집기에서 $PROFILE
파일을 열어 PowerShell 프로필에이 명령을 추가합니다. PowerShell 프로필에 대한 자세한 내용은 about_Profiles를 참조하세요.
The 변수 : 드라이브
PowerShell 변수 공급자는 파일 시스템 드라이브처럼 보이고 작동하는 Variable:
드라이브를 생성하지만 세션의 변수와 해당 값을 포함합니다.
Variable:
드라이브로 변경하려면 다음 명령을 사용하십시오.
목록에 Variable:
드라이브의 항목과 변수는 또는 Get-ChildItem
cmdlet
특정 변수의 값을 얻으려면 파일 시스템 표기법을 사용하여 드라이브 이름과 변수 이름을 지정합니다. 예를 들어 $PSCulture
자동 변수를 가져 오려면 다음 명령을 사용하십시오.
Variable:
드라이브 및 PowerShellVariable 공급자에 대한 자세한 정보를 표시하려면 다음을 입력하십시오.
공급 업체 경로가있는 가변 구문
공급 업체 경로 앞에 달러 ($
) 기호를 붙이고 IContentCmdletProvider 인터페이스를 구현하는 모든 공급자의 콘텐츠에 액세스 할 수 있습니다.
다음 기본 제공 PowerShell 공급자는이 표기법을 지원합니다.
- about_Environment_Provider
- about_Variable_Provider
- about_Function_Provider
- about_Alias_Provider
변수 cmdlet
PowerShell에는 변수를 관리하도록 설계된 cmdlet 집합이 포함되어 있습니다.
cmdlet을 나열하려면 다음을 입력하십시오.
특정 cmdlet에 대한 도움말을 보려면 다음을 입력하십시오.
Cmdlet 이름 | 설명 |
---|---|
Clear-Variable |
값을 삭제합니다. 변수의. |
Get-Variable |
현재 콘솔의 변수를 가져옵니다. |
New-Variable |
새 변수를 만듭니다. |
Remove-Variable |
변수와 해당 값을 삭제합니다. |
Set-Variable |
변수 값을 변경합니다. |
참고 항목
about_Automatic_Variables
about_Environment_Variables