powershell
# 示例:批量创建用户
$users = Import-Csv "C:\users.csv"
foreach ($user in $users) {
New-LocalUser -Name $user.Name -Password (ConvertTo-SecureString $user.Password -AsPlainText -Force)
}
choco install googlechrome -y
choco upgrade all -y
脚本标准化
定时任务
schtasks /create /tn "Daily Backup" /tr "C:\scripts\backup.ps1" /sc daily /st 23:00
远程执行
powershell
Invoke-Command -ComputerName Server1,Server2 -ScriptBlock { Get-Service }
日志集中管理
powershell
Get-WinEvent -LogName "Application" -MaxEvents 50 | Export-Csv "C:\logs\app_events.csv"
监控与告警
powershell
while($true) {
$cpu = Get-CimInstance Win32_Processor | Measure-Object -Property LoadPercentage -Average | Select-Object -ExpandProperty Average
if($cpu -gt 90) { Send-MailMessage -To "admin@example.com" -Subject "High CPU Alert" -Body "CPU at $cpu%" }
Start-Sleep -Seconds 300
}
DSC (Desired State Configuration)
powershell
Configuration WebServerSetup {
Node "localhost" {
WindowsFeature IIS {
Ensure = "Present"
Name = "Web-Server"
}
}
}
WebServerSetup -OutputPath "C:\DSC"
Start-DscConfiguration -Path "C:\DSC" -Wait -Verbose
Azure Automation
SaltStack
通过合理组合这些工具和方法,可以显著提高Windows环境的运维效率,减少人为错误,并实现更标准化的管理。