반응형
파워셸의 비트와이즈 연산자 사용
아래 시나리오를 해결하는 방법의 예를 찾고 있습니다.
프린터가 "상태"에 대해 다음 속성을 가지고 있다고 상상해 보십시오.
0 - 오프라인
2 -종이쟁반 비움
4 - 토너 소진
8 - 종이잼
상태를 조회하면 12의 값을 반환합니다.이는 프린터에 토너가 소진되고 용지가 걸림을 의미하는 것임을 분명히 알 수 있습니다. 하지만 파워셸을 사용하면 이 문제를 어떻게 해결할 수 있을까요?
감사해요.
파워셸의 부울 비트와 연산자는-band.
해시 테이블에서 값과 설명을 정의하고 프린터에서 12의 값을 갖는다고 가정합니다.
$status = @{1 = "Offline" ; 2 = "Paper Tray Empty" ; 4 = "Toner Exhausted" ; 8 = "Paper Jam" }
$value = 12
그러면 이 문장에서 텍스트에 대한 설명이 나옵니다.
$status.Keys | where { $_ -band $value } | foreach { $status.Get_Item($_) }
파워셸에서 열거를 정의할 수도 있지만 위의 내용도 마찬가지이며 파워셸에서 열거를 정의하는 것은 많은 작업이 필요한 것 같습니다.
여기 파워셸에서 비트와이즈 연산자를 사용하는 방법에 대한 기사가 있습니다.
PowerShell에서 더 많은 작업을 수행할 수 있습니다.다음은 시스템을 사용한 예입니다.IO.파일 옵션:
PS> [enum]::GetValues([io.fileoptions]) | ?{$_.value__ -band 0x90000000}
RandomAccess
WriteThrough
언급URL : https://stackoverflow.com/questions/2648052/using-powershells-bitwise-operators
반응형
'programing' 카테고리의 다른 글
| ORA-00906: 왼쪽 괄호 누락 (0) | 2023.09.07 |
|---|---|
| MariaDB 구문 오류를 확인하는 방법(Error Code 1064)? (0) | 2023.09.07 |
| Excel에서 VBA를 사용하여 이중으로 잘라내기 (0) | 2023.09.07 |
| 에 Powershell v2.0을 내장하고 있습니다.Windows 8 RTM의 NET 앱 (0) | 2023.09.07 |
| 프로그램적으로 뷰를 뷰에 추가하는 방법 (0) | 2023.09.07 |