i working on side project , make easier managment since of out server names 15 charactors long started rdp managment option none liked; started write 1 , down 1 issue, do manage if user types not enough search 2 servers match query. think have put in array , let them select server meant. here have far
function connect-rdp { param ( [parameter(mandatory = $true)] $computername, [system.management.automation.credential()] $credential ) # take each computername , process individually $computername | foreach-object{ try { $computer = $_ $connectiondns = get-adcomputer -server "domaincontroller:1234" -ldapfilter "(name=$computer)" -erroraction stop | select-object -expandproperty dnshostname $connectionsearchdns = get-adcomputer -server "domaincontroller:1234" -ldapfilter "(name=*$computer*)" | select -exp dnshostname write-host $connectiondns write-host $connectionsearchdns if ($connectiondns){ #mstsc.exe /v ($connectiondns) /f }else{ #mstsc.exe /v ($connectionsearchdns) /f } } catch { write-host "could not locate computer '$computer' in ad." -foregroundcolor red } } } basically looking way manage if user types server1
that ask want connect server10 or server11 since both of them match filter.
another option presenting choices user out-gridview, -outputmode switch.
borrowing matt's example:
$selection = get-childitem c:\temp -directory if($selection.count -gt 1){ $idx = 0 $(foreach ($item in $selection){ $item | select @{l='idx';e={$idx}},name $idx++}) | out-gridview -title 'select 1 or more folders use' -outputmode multiple | foreach { $selection[$_.idx] } } else {$selection} this example allows selection of multiple folders, can can limit them single folder switching -outputmode single
Comments
Post a Comment