2014-07-25 5 views
0
param(
[string]$UserName 
) 

$DCs = Get-ADGroupMember "Domain Controllers" 

foreach ($DC in $DCs) 
{ 
Write-Host $DC.name 
} 
$EventList = Get-Eventlog –ComputerName $ComputerName -LogName Security -InstanceID 4740   -UserName *Username* -After "07/20/2014" 

$EventList | Format-List -Property TimeGenerated,Message 

모든 도메인 내의 특정 사용자에 대한 잠금 이벤트를 파악하는 스크립트를 작성하고 있습니다. 나는 $ DC.name에서 computername 변수를 알아 내려고 노력하고 있는데, 어느 시점에서 $ Eventlist = Get-Eventlog 줄을 루프 내에서 이동해야한다는 것을 알고 있습니다. 그렇다면 쓰기 만 삭제하면됩니다. -host $ DC.name?이 루프에서 이름을 초기화하고 매개 변수를 만들려면 어떻게해야합니까?

답변

1

Get-EventLog에는 컴퓨터 이름 배열을 사용할 수 있습니다. foreach 루프가 필요하지 않습니다. 콘솔에 표시 이외의 정보를 사용하지 않을 경우에만 Format-List를 사용한다

$DCs = Get-ADGroupMember "Domain Controllers" 
$EventList = Get-Eventlog –ComputerName $DCs.Name -LogName Security -InstanceID 4740 -UserName *Username* -After "07/20/2014" 
$EventList | Format-List -Property TimeGenerated,Message 

참고 : 그래서 당신이 할 수있는 것은 이것이다. 개체에 아무 것도 사용하지 않으려면 Format-List 또는 Format-Table을 사용하지 마십시오.

관련 문제