저는 회사에 인턴을하고 있으며 클라이언트의 프린터 IP 스키마를 다시 정의해야합니다. Powershell ISE를 사용하고 있으며 사용하는 경우 Powershell ISE를 사용하고 있습니다.Powershell on 2012 PrintServer 특정 서브넷이있는 프린터 포트 검색
Get-PrinterPort
나는 예상대로 전체 목록을 얻습니다. .
$IPAddress = Get-WmiObject -Class Win32_TCPIPPrinterPort | Where-Object ({$_.Name.Split('.').index[-1]} -eq '228')
$IPAddress = Get-WmiObject -Class Win32_TCPIPPrinterPort | Where-Object ({$_.Name.Split('.')} -match '192.168.228*')
$IPAddress = Get-WmiObject -Class Win32_TCPIPPrinterPort | Where-Object ({$_.Name.Split('.').index[-1]} -match '228')
아무것도 표시되지 않습니다 : 내가 192.168.228의 서브넷 세트 내의 모든 프린터 포트를 찾고 있어요 그러나, *, 나는 다음과 같은 사용했다.
Get-WmiObject -Class Win32_TCPIPPrinterPort -OutVariable allIPs
foreach ($splitIP in $allIPs -split '.'){
$splitIP = $allIPs -split '.'
sort $splitIP[2] -Unique -OutVariable uniqueSubnetIP
}
$uniqueSubnetIP
: 나는 또한에 스크립트를 수정 한
$IPAddress = Get-WmiObject -Class Win32_TCPIPPrinterPort | Where-Object ({$_.Name.Split('.')} -match '*228')
부분 IP 주소를 검색 할 -match, -icontains, -contains, -like 여러 다른 많은 변화를 시도했다
This is the output I get from the above code
궁극적으로,이 같은 범위에 넣어하는 서브넷 IP를 각각의를 통해 필터링하고 마지막 옥텟 스키마 외부에있는 사람을 찾아 프로세스를 자동화 할 :
< 192.268.***.50 || > 192.168.***.60
당신이 제공 할 수있는 도움은 정말 감사합니다. 나는 이것에 대해 알아 내려고 노력했다.
저는 처음 부분에 아무것도 표시하지 않았으므로 정확하게 말했던 것을 깨닫습니다. 나는 그게 아무것도하지 않았다는 것을 보여주기 위해 말하지 않았다. – brehma
그럼 ..이 질문은 더 이상 적합하지 않습니까? 그렇다면 닫을 수 있습니다. 편집 옵션 근처에 있습니다. – gravity
첫 번째 부분 만 더 관련성이 없어졌으며 하위 부분은 여전히 적합합니다. – brehma