PowerShell의 불리언 값

  1. Windows PowerShell에서 부울의 정의
  2. 결론
PowerShell의 불리언 값

Windows PowerShell 스크립트에서는 종종 참(true)을 기반으로 한 논리를 사용합니다.

하지만 누군가가 특정 기준을 충족하지 않을 때를 알아야 하는 상황이 있을 수 있습니다.

따라서 작성하고 디버깅할 때 PowerShell은 보다 긍정적인 접근 방식을 취합니다. 부정(negation)을 이해하는 것이 중요합니다.

이 문서에서는 기본 명령 및 연산자를 통해 PowerShell에서 부울 값의 사용법을 탐색하고, 스크립트 개발에서의 다재다능함과 중요성을 보여줍니다.

Windows PowerShell에서 부울의 정의

PowerShell에서 무언가가 존재하는지 여부를 결정할 때 우리는 $True 또는 $False로 표현된 부울 값에 대해 이야기합니다.

아래에 보여지는 기본 구문은 부울 작동 방식을 설명합니다. 부울 유형 값은 True 또는 False 중 하나를 반환하는 출력 형식입니다.

여전히 구문은 두 개 이상 값 비교에 비교 및 조건 연산자를 사용합니다.

예제 코드:

# Using -eq operator
"yes" -eq "yes"

# Using -ne operator
"no" -ne "no"

제공된 코드에서는 -eq 연산자를 사용하여 문자열 "yes""yes"와 일치하는지 확인합니다. 두 문자열이 동일하므로 이 비교는 $true를 생성합니다.

반대로 -ne 연산자를 사용하여 문자열 "no""no"와 다른지 여부를 검사합니다. 그러나 두 문자열이 동일하므로 비교는 $false를 반환합니다.

출력:

파워쉘의 불리언 값 - 출력 1

부울 표현식을 평가할 때, 값의 왼쪽을 오른쪽 값과 비교합니다. 왼쪽 값이 오른쪽 값과 같으면 True로 평가되고, 그렇지 않으면 False로 평가됩니다.

-eq-ne는 개별 값을 비교하는 데 유용하지만, andor 연산자를 사용하여 더 복잡한 평가를 수행할 수 있습니다.

PowerShell에서 andor 연산자는 여러 조건을 결합하고 함께 평가하는 데 사용됩니다.

예제 코드:

$condition1 = $true
$condition2 = $false

# Using 'and' operator
$result1 = $condition1 -and $condition2

# Using 'or' operator
$result2 = $condition1 -or $condition2

Write-Host "Result of condition1 AND condition2: $result1"
Write-Host "Result of condition1 OR condition2: $result2"

제공된 코드에서는 먼저 $condition1$true로 설정하고, $condition2$false로 설정합니다. 그런 다음 and 연산자를 사용하여 이 조건들을 결합합니다.

$condition1이 true이고 $condition2가 false이므로 $result1의 결과는 $false가 됩니다. 다음으로 or 연산자를 사용하여 동일한 조건들을 결합합니다.

하나 이상의 조건($condition1)이 true이므로 $result2의 결과는 $true가 됩니다.

출력:

파워셸의 부울 값 - 출력 2

부울 값을 출력하는 여러 방법이 있으며, 글의 다음 섹션에서 이를 논의하겠습니다.

비교 연산자 사용하기

여러 조건 연산자를 사용하여 값을 비교하고 부울 결과를 출력할 수 있습니다. 우리의 첫 번째 예입니다.

예제 코드:

10 -eq 10 # equal
10 -gt 20 # greater than
10 -lt 20 # less than
10 -le 11 # less than or equal
10 -ge 8 # greater than or equal

이 스크립트에서는 다양한 비교 연산자를 사용하여 서로 다른 값들 간의 관계를 평가합니다. -eq 연산자는 1010과 같은지 평가하며, 이는 참으로 $true를 반환합니다.

하지만 -gt 연산자는 1020보다 큰지 여부를 조사하며, 이는 거짓이므로 false를 반환합니다. 마찬가지로 -lt, -le, 및 -ge 연산자를 사용하여 10이 특정 값보다 작은지, 작거나 같은지, 크거나 같은지를 각각 조사하며, 값 간의 통찰력 있는 비교를 제공합니다.

출력:

파워셸의 불리언 값 - 출력 3

PowerShell 명령 사용하기

일부 기본 Windows PowerShell 명령은 부울 값을 반환합니다. 그 예로 Test-Path cmdlet이 있습니다.

Test-Path cmdlet은 디렉토리 경로가 로컬 컴퓨터에 존재하는지 확인합니다.

예제 코드:

# Check if the directory C:\Windows\temp exists
$exists = Test-Path -Path "C:\Windows\temp"

# Print the result
Write-Host "Directory exists: $exists"

이 스크립트에서는 Test-Path 명령을 사용하여 C:\Windows\temp 디렉토리가 시스템에 존재하는지 확인합니다. Test-Path 명령의 결과는 $exists 변수에 저장되며, 디렉토리가 존재하면 $true가 되고, 존재하지 않으면 $false가 됩니다.

출력:

powershell에서의 부울 값 - 출력 4

일부 기본 명령은 부울 값을 출력하기 위해 매개변수를 요구합니다. 예를 들어, Test-Connection 명령은 부울 값을 반환하기 위해 -Quiet 매개변수를 사용합니다.

예제 코드:

# Check if we can reach www.google.com with 2 echo request packets and suppress output
$reachable = Test-Connection -ComputerName "www.google.com" -Count 2 -Quiet

# Print the result
Write-Host "Host is reachable: $reachable"

이 스크립트에서는 Test-Connection 명령을 사용하여 www.google.com에 두 개의 에코 요청 패킷을 보내고 호스트의 접근 가능성을 판단합니다. -Quiet 매개변수를 지정함으로써 최종 결과를 제외한 모든 출력을 억제하여 결과는 $reachable 변수에 저장됩니다.

www.google.com에 접근 가능하면 $reachable의 값은 true가 되고, 그렇지 않으면 false가 됩니다.

출력:

파워쉘의 불리언 값 - 출력 5

결론

부울 값은 PowerShell 스크립팅에서 기본적이며, 조건 평가와 프로그램 흐름 제어를 가능하게 합니다. $True$False는 PowerShell의 기본 부울 표현이지만, 특정 시나리오에서는 외부 시스템이나 API与의 상호작용 시 10 등과 같은 대안도 사용할 수 있습니다.

-eq-ne와 같은 비교 연산자의 사용은 값 간의 직접 비교를 용이하게 하여 부울 결과를 반환합니다. 게다가 Test-PathTest-Connection과 같은 PowerShell 명령은 부울 값의 유용성을 더욱 확장하여 디렉토리의 존재 여부나 호스트의 접근성을 평가하는 방법을 제공합니다.

PowerShell에서 부울 값을 이해하고 효과적으로 활용하는 것은 스크립트 기능과 효율성을 향상시켜, 사용자가 견고하고 신뢰할 수 있는 자동화 솔루션을 만들 수 있도록 합니다.

튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

관련 문장 - PowerShell Boolean