우리 환경의 사용자가 시설 내 다른 사용자의 세션을 차단하는 데 도움이되는 작은 스크립트가 있습니다 (본사에서 일하고 기업 사용자는 다른 사용자의 세션을 차단할 수 있어야 함) 따라서 다른 사이트)powershell - 배열 문제에서 특정 정보 얻기
그래서 나는이있어 :
: 나는 그것이 결과에서 세션 ID를 잡아 얻을 수 없습니다, 그러나$servers = "server1, server2, server3, server4, server5"
#search for user in servers farm
foreach ($server in $servers) {
$results = & qwinsta.exe $userid /server:$server
if ($results -ne $null) {
write-host "User found in $server"
$serverfound = $server
write-host $results[1]
$sessionid = $results[1] | Where-Object { $_ -is 0..99}
write-host "Session ID is: $sessionid"
}
}
을,이 스크립트의 출력은
Ple 우리가
사용자가
RDP-TCP # 0 x2adm 2 활성
세션 ID가 서버 5에있는 RDSfarm 서버에서 x2adm를 검색하면서 ASE 기다려야 :
단순히에 노력하고 있습니다 출력에서 숫자를 가져 와서 $ sessionid에 할당하면 섀도 잉 프로세스를 완전히 자동화 할 수 있습니다.
도움이 될 것입니다. 미리 감사드립니다.
여기에 좋은 대답이 있습니다. http://stackoverflow.com/questions/23445175/qwinsta-serversomesrv-equivalent-in-powershell – sodawillow
문제는 $ servers = "server1, server2, server3 , server4, server5 "로 변경하십시오. $ servers = "server1", "server2", "server3", "server4", "server5"이어야하므로 5 개의 요소가있는 배열을 얻을 수 있습니다. –
댄에 동의합니다. 방금 문자열이 아닌 5 개의 개별 항목이 전달되었습니다. –