SBS 2003 Active Directory에서 2008 R2로 마이그레이션하면서 클라우드로 이전하는 중입니다.PowerShell의 Net 사용자
새 사용자를 구성하고 사용자가 암호를 재설정하지 못하는 것으로 나타났습니다.
My Server Admin에서 네트워크 사용자를 사용하는 방법을 보여주었습니다.
일부 계정에서 정보를 얻을 수 있다는 것을 알게되었습니다. 100 개가 넘는 계정을 처리 할 때 PowerShell을 사용해 보았습니다.
이 게시물 (Use powershell to look up 'net user' on other domains?)에서 Lorenzo는 Get-ADUser를 사용하도록 권장하며 (다른 도메인에서 폴링하는 경우에도 적용됩니다). PowerShell 프롬프트에서 Get-ADUser를 실행하면 commandlet이 인식되지 않는다는 메시지가 나타납니다.
텍스트 파일에서 사용자 ID를 읽고 출력을 로그 파일로 보내서 추가 분석을 위해 서버 관리자에게 보낼 수 있습니다. 스크립트가 현재 실행
# Get our list of user names from the local staff.txt file
$users = get-content 'C:\Scripts\staff.txt'
# Create log file of output:
$LogTime = Get-Date -Format 'MM-dd-yyyy_hh-mm-ss'
$CompPath = "C:\Scripts\"
$CompLog = $CompPath + "NetUserInfo" + $LogTime + ".txt"
New-Item -path $CompLog -type File
foreach ($user in $users) {
#Testing user:
"Testing user: $user" | out-file $CompLog -Append
# Obtain user information using net user:
net user $user /domain >> $CompLog
# Pause to let system gather information:
Start-Sleep -Second 15
}
으로 내 로그 파일이 응답 "다음에 두 개 또는 세 개의 사용자 이름을 갖습니다 : 여기
지금까지 (내가 PowerShell을 완전히 새로운 오전 참고하시기 바랍니다) 내 코드입니다 요청은 도메인 (도메인)의 도메인 컨트롤러에서 처리됩니다. "net 사용자가 CMD에서"시스템 오류 5가 발생했습니다. 액세스가 거부되었습니다. " 이것은 출력 파일에 기록되지 않습니다. IF net 사용자가 CMD에서 사용자 정보를 반환하면 출력 파일에 기록됩니다. 현재 몇 명의 사용자에 대해서만 출력을 받고 있지만 CMD에서 명령을 실행할 때 최소한 10 개의 정보를 검색 할 수 있습니다.
첫 번째 생각은 net 사용자 명령이 완료 될 때까지 기다릴 필요가 있었기 때문에 (즉 Start-Sleep 명령) 출력에 아무런 영향을주지 않았습니다.
도움을 주시면 감사하겠습니다.
사용'은 Get-ADUser'가 PowerShell에서 사용자 정보를 얻을 : 또한 조금 더가 (표준 오류 스트림)의 변화
이 그것을 설명
로 STDERR을 리디렉션하려면 'net'을 호출하는 대신에. 데이터를보다 잘 제어하고 데이터를보다 효율적으로 사용할 수 있습니다. – alroc