728x90
반응형
(관련된 글)
그룹 정책 | 오랜 기간 로그인 하지 않은 사용자 프로필 삭제🔗
1. 개요
지난 글(그룹 정책 | 오랜 기간 로그인 하지 않은 사용자 프로필 삭제🔗)에서 오랜 기간 로그인하지 않은 사용자 프로필 삭제를 했습니다. 이 때 예외 없이 모두 삭제하기 때문에 예외를 주고 싶다면, 역시 스크립트로 해야합니다.
스크립트를 알아보겠습니다.
2. PowerShell 로 오랜 기간 로그인하지 않은 사용자 프로필 삭제하기
Function Delete_Old_User_Profile
(
[Array] $Excluded_Users,
[Int32] $Slept_days
)
{
# difference from today
$difference = (Get-Date).AddDays(-$Slept_days)
# Select Users who slept for $Slept_days
$Local_Profiles = Get-WMIObject -class Win32_UserProfile
$Local_Profiles = $Local_Profiles | Where-Object { ( !$_.Special ) `
-and ( !$_.Loaded ) `
-and ( $_.ConvertToDateTime($_.LastUseTime) -lt $difference ) }
# Remove selected $LocalProfiles
foreach ($Local_Profile in $Local_Profiles)
{
if (!($Excluded_Users -like $Local_Profile.LocalPath.Replace("C:\Users\","")))
{
$Local_Profile | Remove-WmiObject # 프로필 삭제
$temp = "$($Local_Profile.LocalPath) ($($Local_Profile.LastUseTime)) profile deleted."
Write-Host $temp -ForegroundColor Red
}
}
}
## End Delete_Old_User_Profile ###################################################################
$Excluded_Users = @( "Administrator", "Odin") # 예외 사용자 이름
$Slept_days = 50 # ~일 동안 로그인 하지 않은 사용자
Delete_Old_User_Profile $Excluded_Users $Slept_days
상세하게 설명을 써놓은 것 같습니다. 위 코드를 실행하면 되겠습니다.
(관련된 글)
그룹 정책 | 오랜 기간 로그인 하지 않은 사용자 프로필 삭제🔗
(출처)
https://stackoverflow.com/questions/72868004/windows-user-deletion-script
728x90
반응형
'Windows > PowerShell' 카테고리의 다른 글
PowerShell | 방화벽 한 번에 해제하기 (0) | 2023.03.20 |
---|---|
PowerShell | Log 만들어서 파일 내보내기 (0) | 2022.11.21 |
PowerShell | 모니터 밝기 조절하기 (0) | 2022.10.08 |
PowerShell | 휴지통에 파일 생성, 보기, 삭제, 휴지통 비우기 (0) | 2022.10.05 |
PowerShell | 사용자 계정 추가, 관리자 권한 주기 (0) | 2022.10.03 |
댓글