16 禁用用户帐户和Excel查看HTML


Hi_大家好,我是Cantgis,欢迎做客Cantgis小屋。

PowerShell禁用用户账户
我们使用这个Disable-ADAccount cmdlet命令
来禁用一个Active Directory用户、计算机或服务帐户。

当我们需要禁用多个帐户,可能会发现一些问题:

1
PS> Disable-ADAccount -Identity user1,user2,user3


但这并不是出现错误和影响正常运行。只是标识参数不接受多个值。
典型的解决方案是使用服务来通过一个foreach对象cmdlet帐户:

1
2
3
echo user1 user2 user3 | ForEach-Object {
   Disable-ADAccount -Identity $_
}




我们下面有一个更为简单的做法来做这个事情,我们只需要通过管道直接指向Disable-ADAccount 
在默认情况下,
Disable-ADAccount不会生成任何输

出结果的
这样我们需要添加一个
PassThru 来显示输出结果

1
echo user1 user2 user3 | Disable-ADAccount -PassThru


这样Cantgis 带领大家就能得到非常完美的结果,一次性禁止多个AD用户或者服务账户哦。


Excel可以用来查看HTML。


如果我们添加一些CSS样式来ConvertTo-HTML的结果可以添加比较棒的输出到Excel中,
我们会用一个简单的输出csv。下面Cantgis 写了一个小脚本关于计算机输出CPU,当然你可以丰富这个脚本。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$HTMLFile Join-Path $Home "Processes.html"
$HTML Get-Process Select-Object CPU, ID, ProcessName | ConvertTo-HTML
                                                                                                                
# Reference for color names http://www.w3schools.com/cssref/css_colornames.asp
$HTML $HTML -replace '^[<]tr[>][<]td[>][<][/]td[>]','<tr style="color:red" ><td></td>'
                                                                                                                
# Highlight anything that has Chrome or Google In the Name
$HTML $HTML -replace '[<]td(?<T>[>]((chrome)|(Google[^<]*))[<][/]td[>])','<td style="blue;color:Yellow"  ${T}'
$HTML Out-File $HTMLFile
                                                                                                                
#Find a good version of Excel.exe
$Excel Resolve-Path "C:\Program Files*\Microsoft Office\Office*\EXCEL.EXE" |
            Select-Object -First 1 -ExpandProperty Path
                                                                                                                
$Excel $HTMLFile
 
 
 
 
 


下面就是这个脚本输出的截图


16 禁用用户帐户和Excel查看HTML


请持续关注Cantgis小屋。



     本文转自cantgis 51CTO博客,原文链接:http://blog.51cto.com/cantgis/1242551,如需转载请自行联系原作者