programing

PowerShell의 부울 리터럴

elecom 2023. 5. 13. 08:49
반응형

PowerShell의 부울 리터럴

PowerShell의 부울 리터럴은 무엇입니까?

$true그리고.$false.

하지만 그것들은 상수입니다.불리언을 위한 언어 수준의 리터럴은 없습니다.

필요한 위치에 따라, 예를 들어, Boolean(그리고 충돌하는 오버로드가 없는) 또는 조건문이 필요한 메서드 호출에서 유형이 Boolean이어야 하는 경우 Boolean 값으로 강제 적용되는 모든 항목을 사용할 수 있습니다.예를 들어 null이 아닌 대부분의 개체는 참입니다. null빈 문자열, 빈 배열 및 숫자0거짓입니다.

[bool]1그리고.[bool]0작동하기도 합니다.

기존 답변에 추가 정보 추가하기부울 리터럴$true그리고.$falsePowerShell 스크립트의 명령줄 매개 변수로 사용할 때도 마찬가지로 작동합니다.이름이 지정된 파일에 저장된 아래 PowerShell 스크립트의 경우installmyapp.ps1:

param (
    [bool]$cleanuprequired
)

echo "Batch file starting execution."

PowerShell 명령줄에서 이 PowerShell 파일을 호출해야 하는 경우 다음과 같이 수행할 수 있습니다.

installmyapp.ps1 -cleanuprequired $true

OR

installmyapp.ps1 -cleanuprequired 1

여기서1그리고.$true동등합니다.또한.0그리고.$false동등합니다.

참고: 해당 문자열 리터럴을 예상하지 않음true자동으로 부울로 변환할 수 있습니다.예를 들어, 다음 명령을 실행하는 경우:

installmyapp.ps1 -cleanuprequired true

스크립트 실행에 실패하고 다음 오류가 발생합니다.

'정리 필요' 매개 변수에 대한 인수 변환을 처리할 수 없습니다.값 "System"을 변환할 수 없습니다.String"을 입력합니다.부울".부울 매개 변수에는 부울 값과 숫자(예: $True, $False, 1 또는 0)만 사용할 수 있습니다.

언급URL : https://stackoverflow.com/questions/10581206/boolean-literals-in-powershell

반응형