PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

많은 사람들이 PowerShell을 사용하면 Windows GUI로 수행할 수 없는 작업을 수행할 수 있기 때문에 이를 선호합니다. 그럼에도 불구하고 일부 PowerShell cmdlet이 약간 지루하거나 복잡할 수 있다는 점은 부인할 수 없습니다 . 하지만 이러한 cmdlet을 편집하여 원하는 대로 "작동"할 수 있는 방법이 있다면 어떨까요? 믿거나 말거나, 그렇게 하는 쉬운 방법이 있습니다. PowerShell 기본 매개변수의 값을 수정하여 cmdlet의 동작을 변경할 수 있습니다. 이 문서에서는 PowerShell의 기본 매개 변수를 사용하여 cmdlet 명령 동작을 변경하는 방법을 보여줍니다.

경고

시작하기 전에 명심해야 할 몇 가지 사항이 있습니다. PowerShell 기본 매개변수 및 cmdelt 동작을 변경하는 것이 편리하기는 하지만 문제가 발생할 수 있습니다. 스크립트를 실행하고 해당 스크립트에서 수정된 cmdlet이 특정 방식으로 작동한다고 가정하면 예측할 수 없는 결과가 나타날 수 있습니다. 따라서 PowerShell 기본 매개변수를 신중하게 변경해야 합니다.

빠른 검토

기본 매개 변수를 사용하려면 익숙해져야 할 두 가지 PowerShell 개념이 있습니다. 첫 번째 개념은 가변적이다. PowerShell에서 변수 이름은 항상 달러 기호로 시작하며 변수 이름을 입력하여 변수의 내용을 쓸 수 있습니다.

여러분에게 친숙할 두 번째 개념은 해시 테이블입니다. 해시 테이블은 기본적으로 키/값 쌍으로 구성된 목록입니다. 예를 들어, 미국 주 이름과 해당 약어가 포함된 해시 테이블을 생성한다고 가정해 보겠습니다. 아래는 코드입니다:

$StateList = @{}
$StateList.add('플로리다','FL')
$StateList.add('사우스캐롤라이나','SC')
$StateList.add('조지아','GA')
$StateList

코드의 첫 번째 줄은 $StateList 라는 빈 해시 테이블을 만듭니다 . 다음 세 줄은 테이블에 항목을 추가합니다. 각 항목은 키(상태 이름)와 값(상태 약어)으로 구성됩니다. 마지막 줄에는 테이블의 내용이 나열됩니다. 아래 이미지에서 코드가 실제로 작동하는 것을 볼 수 있습니다.

이는 매우 간단한 예일 뿐이며 해시 테이블을 사용하는 다른 방법도 많이 있습니다.

PowerShell 기본 매개변수 사용

PowerShell에는 cmdlet과 함께 사용되는 기본 매개 변수를 저장하는 데 사용되는 기본 제공 변수가 있습니다. 이 변수를 $PSDefaultParameterValues ​​​​라고 합니다 . 변수의 초기 소개와 이름에서 알 수 있듯이 이는 일반적인 변수가 아니라 해시 테이블입니다. 하지만 파워셸에 변수명을 입력해 보면 아래와 같이 테이블이 비어 있는 것을 금방 알 수 있습니다.

PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

그렇다면 이 $PSDefaultParameterValues ​​변수 로 무엇을 할 수 있습니까 ? 위에서 언급한 것처럼 PowerShell cmdlet의 동작을 제어할 수 있습니다. 유일한 요점은 cmdlet 명령의 고유한 기능을 극복할 수 없다는 것입니다. 그럼 예를 살펴보겠습니다.

이 예는 실제 생활에서 사용하고 싶지 않을 수도 있지만 cmdlet 동작을 근본적으로 변경하는 것이 얼마나 쉬운지 보여줍니다. PowerShell에서 Get-TimeZone cmdlet을 입력하면 PC가 현재 사용하도록 구성된 표준 시간대의 이름이 표시됩니다. 아래 이미지에서 이 예를 볼 수 있습니다.

PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

이제 시스템이 사용하도록 구성된 표준 시간대가 아닌 사용 가능한 표준 시간대를 표시하도록 이 cmdlet을 변경합니다. 이렇게 하려면 Get-Help cmdlet과 Get-TimeZone cmdlet을 차례로 사용하는 cmdlet 구문이 필요합니다 . 아래에서 cmdlet의 구문을 볼 수 있습니다.

PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

이 구문에는 ListAvailable 이라는 매개변수가 포함되어 있습니다 . 아래 명령을 입력하세요.

$PSDefaultParameterValues.Add("Get-TimeZone:ListAvailable",$True)

이 명령의 첫 번째 부분은 이전 섹션의 미국 주 약어 예제에서 했던 것처럼 해시 테이블에 값을 ��가하겠다고 PowerShell에 알려줍니다. 이 해시 테이블에는 키/값 쌍이 포함되어 있습니다. 이 경우 키는 cmdlet 이름(Get-TimeZone) 뒤에 쉼표와 설정하려는 매개 변수 이름이 오는 것입니다. 이 경우 매개변수 이름은 ListAvailable입니다. 이 cmdlet의 두 번째 부분은 매개 변수에 할당하려는 값입니다. 여기는 $True 입니다 . ListAvailable 매개 변수에는 일반적으로 값이 필요하지 않으므로 $True를 지정하면 PowerShell에 값을 할당하지 않고 이 매개 변수를 사용하도록 지시하는 방법입니다.

아래 이미지를 보면 Get-TimeZone cmdlet을 실행하면 어떤 일이 발생하는지 확인할 수 있습니다.

PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

주의할 점

이해해야 할 가장 중요한 점은 PowerShell 기본 매개 변수에 새 값을 추가하는 것은 cmdlet의 기능을 제거하는 것이 아니라 cmdlet의 기본 동작을 변경하는 것이라는 것입니다. 현재 시간대를 표시하는 대신 사용 가능한 시간대를 표시하도록 Get-TimeZone cmdlet을 변경하는 경우에도 마찬가지입니다. 더 많은 시간대 정보를 보면 현재 시간대 정보를 계속 표시할 수 있습니다.

알아야 할 또 다른 사항은 사용자 정의 기본 매개변수를 제거할 수 있다는 것입니다. 단일 항목을 제거하려면 $PSDefaultParameterValues.Remove 명령 과 제거하려는 항목의 이름을 차례로 사용합니다. 예를 들어:

$PSDefaultParameterValues.Remove("Get-TimeZone:ListAvailable")

대신 다음 명령을 사용하여 해시 테이블의 전체 내용을 삭제할 수 있습니다.

$PSDefaultParameterValues.Clear();

아래에서 두 기술의 예를 볼 수 있습니다.

PowerShell 기본 매개변수를 사용하여 명령 동작을 변경하는 방법

전체 해시 테이블을 삭제하거나 단일 항목을 삭제할 수 있습니다.

cmdlet 명령의 기본 동작을 변경하는 것은 자주 수행되지 않지만 필요할 때 변경하는 방법을 이미 알고 있습니다.

당신의 성공을 기원합니다!

더보기:


무선 라우터의 WiFi 안테나를 교체하는 방법

무선 라우터의 WiFi 안테나를 교체하는 방법

대부분의 무선 라우터와 액세스 포인트에는 모든 방향에서 동일하게 양호한 신호를 방송하는 WiFi 안테나가 포함되어 있습니다. 이 안테나는 무지향성이므로 라우터 설정 및 배치가 쉽습니다.

라우터에 내장된 방화벽을 켜는 방법

라우터에 내장된 방화벽을 켜는 방법

방화벽은 해커와 사이버 범죄자에 대한 강력한 방어 시스템입니다. 다음 기사에서는 방화벽이 무엇인지 정확하게 살펴보겠습니다. 왜 그것을 사용하고 싶습니까? 무선 라우터에 내장된 방화벽을 찾고, 활성화하고, 구성하는 방법.

Windows 10에서 Nvidia 드라이버를 복원(롤백)하는 방법

Windows 10에서 Nvidia 드라이버를 복원(롤백)하는 방법

최신 Nvidia 드라이버로 인해 문제가 발생하는 경우 이 문서의 단계에 따라 Windows 10에서 드라이버를 롤백하세요.

PC 및 VirtualBox에 Bliss OS X86을 설치하는 방법

PC 및 VirtualBox에 Bliss OS X86을 설치하는 방법

맞춤형 Android Bliss OS는 X86 노트북이나 PC에서만 사용할 수 있는 것이 아니라 스마트폰, 태블릿 등 다른 x86 기반 장치에도 설치할 수 있습니다. Bliss OS는 32비트 및 64비트 장치를 모두 지원합니다.

Windows 10/11에서 Microsoft Store 앱을 다시 등록하는 방법

Windows 10/11에서 Microsoft Store 앱을 다시 등록하는 방법

Store 앱이 열리지 않거나 정지되거나 제대로 작동하지 않는 경우 Microsoft Store 앱을 다시 등록하면 이 문제가 해결됩니다. 다음 가이드에서는 Windows 10에서 Microsoft Store 앱을 다시 등록하는 방법을 보여줍니다.

Netgear 라우터에서 DDNS를 설정하고 구성하는 방법

Netgear 라우터에서 DDNS를 설정하고 구성하는 방법

이 가이드는 Netgear 라우터에서 동적 DNS(DDNS)를 설정하고 구성하는 데 도움이 됩니다. 라우터에 내장된 동적 DNS를 사용하면 원격으로 네트워크에 액세스하기 위해 컴퓨터를 네트워크에서 지속적으로 실행할 필요가 없습니다.

Windows 10이 인터넷 대역폭을 낭비하는 6가지 방법

Windows 10이 인터넷 대역폭을 낭비하는 6가지 방법

Windows 10 개발자는 연결성과 상호 운용성에 중점을 둡니다. 이는 인터넷 연령 및 대역폭 요구 사항에 맞게 설계된 운영 체제입니다.

Windows 10/11에서 작동하지 않는 Windows PIN을 수정하는 8가지 방법

Windows 10/11에서 작동하지 않는 Windows PIN을 수정하는 8가지 방법

PIN을 올바르게 입력했는데도 Windows에서 PIN이 올바르지 않다고 표시하는 문제가 발생할 수 있습니다.

Foxiebro 악성코드는 어떻게 작동하나요? 그것을 제거하는 방법?

Foxiebro 악성코드는 어떻게 작동하나요? 그것을 제거하는 방법?

Adware BrowserModifier는 일상적인 사용 중에 사용자를 속일 수 있는 가장 악성 프로그램 중 하나입니다. 그리고 Foxiebro는 이들 중 1위를 차지하고 있습니다.

Windows 및 macOS에서 IMG 파일의 압축을 푸는 방법

Windows 및 macOS에서 IMG 파일의 압축을 푸는 방법

디스크를 구워본 적이 있는 사람이라면 대부분의 디스크 이미지 파일 형식에 익숙할 것입니다. IMG는 그 중 하나이며 운영 체제, 소프트웨어 또는 비디오 게임과 같은 프로그램을 압축하는 데 자주 사용됩니다.