다음을 통해 공유


Set-Item

항목 값을 명령에 지정된 값으로 변경합니다.

구문

Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]

Description

cmdlet은 Set-Item 변수 또는 레지스트리 키와 같은 항목의 값을 명령에 지정된 값으로 변경합니다.

예제

예제 1: 별칭 만들기

이 명령은 메모장에 대한 np의 별칭을 만듭니다.

Set-Item -Path alias:np -Value "c:\windows\notepad.exe"

예제 2: 환경 변수의 값 변경

이 명령은 UserRole 환경 변수의 값을 관리자로 변경합니다.

Set-Item -Path env:UserRole -Value "Administrator"

예제 3: 프롬프트 함수 수정

이 명령은 프롬프트 함수를 변경하여 경로 앞의 시간을 표시합니다.

Set-Item -Path function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}

예제 4: 프롬프트 함수에 대한 옵션 설정

이 명령은 프롬프트 함수에 대한 AllScopeReadOnly 옵션을 설정합니다. 이 명령은 .의 Options 동적 매개 변수를 Set-Item사용합니다. Options 매개 변수는 별칭 또는 함수 공급자와 함께 사용할 때만 사용할 수 Set-Item 있습니다.

Set-Item -Path function:prompt -Options "AllScope,ReadOnly"

매개 변수

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

형식:SwitchParameter
별칭:cf
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Credential

참고 항목

이 매개 변수는 PowerShell과 함께 설치된 공급자에서 지원되지 않습니다. 다른 사용자를 가장하거나 이 cmdlet을 실행할 때 자격 증명을 높이려면 Invoke-Command를 사용합니다.

형식:PSCredential
Position:Named
Default value:Current user
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Exclude

문자열 배열로 이 cmdlet이 작업에서 제외하는 항목 또는 항목을 지정합니다. 이 매개 변수의 값은 Path 매개 변수를 한정합니다. 경로 요소 또는 패턴(예: *.txt.)을 입력합니다. 와일드카드 문자를 사용할 수 있습니다. Exclude 매개 변수는 와일드카드 문자가 디렉터리의 내용을 지정하는 항목의 내용(예: C:\Windows\*명령)이 포함된 경우에만 유효합니다C:\Windows.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:True

-Filter

Path 매개 변수를 한정할 필터를 지정합니다. FileSystem 공급자는 필터 사용을 지원하는 유일한 설치된 PowerShell 공급자입니다. fileSystem 필터 언어에 대한 구문은 about_Wildcards 찾을 수 있습니다. 필터는 검색된 후 PowerShell이 개체를 필터링하지 않고 cmdlet이 개체를 가져올 때 공급자가 적용하기 때문에 다른 매개 변수보다 더 효율적입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:True

-Force

cmdlet이 읽기 전용 별칭 또는 변수와 같이 변경할 수 없는 항목을 강제로 설정합니다. cmdlet은 상수 별칭 또는 변수를 변경할 수 없습니다. 구현은 공급자마다 다릅니다. 자세한 내용은 about_Providers 참조하세요. Force 매개 변수를 사용하더라도 cmdlet은 보안 제한을 재정의할 수 없습니다.

형식:SwitchParameter
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Include

문자열 배열로 이 cmdlet이 작업에 포함하는 항목 또는 항목을 지정합니다. 이 매개 변수의 값은 Path 매개 변수를 한정합니다. 경로 요소 또는 패턴(예: "*.txt".)을 입력합니다. 와일드카드 문자를 사용할 수 있습니다. Include 매개 변수는 명령에 와일드카드 문자가 디렉터리의 내용을 지정하는 항목의 내용(예: C:\Windows\*포함)을 C:\Windows 포함하는 경우에만 유효합니다.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:True

-LiteralPath

하나 이상의 위치에 대한 경로를 지정합니다. LiteralPath값은 입력된 대로 정확하게 사용됩니다. 와일드카드로 해석되는 문자는 없습니다. 경로에 이스케이프 문자가 포함된 경우 작은따옴표로 묶습니다. 작은따옴표는 PowerShell에 문자를 이스케이프 시퀀스로 해석하지 않도록 지시합니다.

자세한 내용은 about_Quoting_Rules 참조하세요.

형식:String[]
별칭:PSPath
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Options

별칭함수 공급자가 사용할 수 있는 동적 매개 변수입니다. 자세한 내용은 about_Alias_Providerabout_Function_Provider 참조하세요.

별칭의 Options 속성 값을 지정합니다.

유효한 값은 다음과 같습니다.

  • None: 별칭에 제약 조건이 없습니다(기본값).
  • ReadOnly: 별칭은 삭제할 수 있지만 Force 매개 변수를 사용하지 않고는 변경할 수 없습니다.
  • Constant: 별칭을 삭제하거나 변경할 수 없습니다.
  • Private: 별칭은 현재 범위에서만 사용할 수 있습니다.
  • AllScope: 별칭이 생성된 새 범위에 복사됩니다.
  • Unspecified: 옵션이 지정되지 않았습니다.
형식:ScopedItemOptions
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PassThru

항목을 나타내는 개체를 파이프라인에 전달합니다. 기본적으로 이 cmdlet은 출력을 생성하지 않습니다.

형식:SwitchParameter
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Path

항목 위치의 경로를 지정합니다. 와일드카드 문자를 사용할 수 있습니다.

형식:String[]
Position:0
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:True

-Type

레지스트리 공급자가 사용할 수 있는 동적 매개 변수입니다 . 레지스트리 공급자 및 이 매개 변수는 Windows에서만 사용할 수 있습니다.

이 cmdlet이 추가하는 속성의 형식을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • String: null로 끝나는 문자열을 지정합니다. REG_SZ 값에 사용됩니다.
  • ExpandString: 값을 검색할 때 확장되는 환경 변수에 대한 확장되지 않은 참조를 포함하는 null로 끝나는 문자열을 지정합니다. REG_EXPAND_SZ 값에 사용됩니다.
  • Binary: 모든 형식의 이진 데이터를 지정합니다. REG_BINARY 값에 사용됩니다.
  • DWord: 32비트 이진 번호를 지정합니다. REG_DWORD 값에 사용됩니다.
  • MultiString: 두 개의 null 문자로 종료되는 null로 끝나는 문자열의 배열을 지정합니다. REG_MULTI_SZ 값에 사용됩니다.
  • Qword: 64비트 이진 번호를 지정합니다. REG_QWORD 값에 사용됩니다.
  • Unknown: REG_RESOURCE_LIST 값과 같이 지원되지 않는 레지스트리 데이터 형식을 나타냅니다.
형식:RegistryValueKind
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-UseTransaction

활성 트랜잭션에 명령을 포함합니다. 이 매개 변수는 트랜잭션이 진행 중인 경우에만 유효합니다. 자세한 내용은 about_Transactions 참조하세요.

형식:SwitchParameter
별칭:usetx
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Value

항목의 새 값을 지정합니다.

형식:Object
Position:1
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
별칭:wi
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

Object

항목의 새 값을 나타내는 개체를 이 cmdlet으로 파이프할 수 있습니다.

출력

None

기본적으로 이 cmdlet은 출력을 반환하지 않습니다.

Object

PassThru 매개 변수를 사용하는 경우 이 cmdlet은 항목을 나타내는 개체를 반환합니다.

참고

Windows PowerShell에는 다음 별칭이 포함됩니다.Set-Item

  • si

  • Set-Item 는 PowerShell FileSystem 공급자에서 지원되지 않습니다. 파일 시스템의 항목 값을 변경하려면 cmdlet을 Set-Content 사용합니다.

  • 레지스트리 드라이브 HKLM: 에서 HKCU:Set-Item 레지스트리 키의 (기본값) 값에 있는 데이터를 변경합니다.

    • 레지스트리 키의 이름을 만들고 변경하려면 and Rename-Item cmdlet을 New-Item 사용합니다.
    • 레지스트리 값의 이름과 데이터를 변경하려면 , Set-ItemPropertyRename-ItemProperty cmdlet을 사용합니다New-ItemProperty.
  • Set-Item 는 모든 공급자가 노출하는 데이터와 함께 작동하도록 설계되었습니다. 세션에서 사용할 수 있는 공급자를 나열하려면 .를 입력 Get-PsProvider합니다. 자세한 내용은 about_Providers 참조하세요.