我需要生成一个脚本,帮助我在一系列Windows 2003服务器上获取压缩文件/文件夹列表(不是zip文件,但是Windows压缩文件)。我有一台连接到目标服务器的客户端PC,并且可以基于管理员角色进行访问。我的想法是创建一个Powershell脚本来使用WMI或其他东西来处理这个问题?但我对WMI世界的可能性感到失望。任何提示/提示都表示赞赏。
干杯
答案 0 :(得分:1)
我不确定你是否可以用WMI做到这一点,然后再说我不是WMI的大师。如果您可以使用PowerShell 2.0,则使用新的远程处理功能非常简单,例如
$computers = 'server1', 'server2', 'server3'
$compressed = Invoke-Command $computers {Get-ChildItem C:\ -r -force -ea 0 |
Where {$_.Attributes -band [IO.FileAttributes]::Compressed}}
请注意,存储在$ compressed中的每个文件和目录对象都有一个附加属性PSComputerName,用于标识反序列化对象来自哪台计算机。
或者,如果您没有PowerShell 2.0,则可以通过共享访问服务器,例如:
$sharePaths = '\\server1\C$', '\\server2\C$', '\\server3\C$'
Get-ChildItem $sharePaths -r -force -ea 0 |
Where {$_.Attributes -band [IO.FileAttributes]::Compressed}
这种方法可能很慢。