Python 编写PowerShell基准测试命令脚本

Python 编写PowerShell基准测试命令脚本,python,powershell,Python,Powershell,首先,我想说的是,我不太喜欢编码。 我唯一学的语言是一点python,只是一些基础知识 我想让我的工作更轻松,并自动化一些我现在必须手动完成的任务 问题: 有时我必须为客户的某些工作站PC创建基准。 我意识到这一点: powershell->winsat磁盘-v powershell->winsat cpuformal-v powershell->winsat memformal-v powershell->winsat图形规范-v powershell->winsat DWM格式-v 因此,我

首先,我想说的是,我不太喜欢编码。
我唯一学的语言是一点python,只是一些基础知识

我想让我的工作更轻松,并自动化一些我现在必须手动完成的任务

问题:

有时我必须为客户的某些工作站PC创建基准。
我意识到这一点:

powershell->winsat磁盘-v

powershell->winsat cpuformal-v

powershell->winsat memformal-v

powershell->winsat图形规范-v

powershell->winsat DWM格式-v

因此,我使用管理员权限启动powershell并键入第一个命令,等待结果并将其复制并粘贴到.txt文件中。 然后是下一个,下一个等等

我的问题:

我如何:

从脚本打开具有管理员权限的PowerShell
键入命令并执行它(如“打印winsat磁盘…”)
等待结果显示,然后将其复制粘贴到.txt

非常感谢您的帮助。

请尝试:

导入操作系统

系统(““powershell-command”winsat disk-v“>>result.txt”)

system(““powershell-command”winsat cpuformal-v“>>result.txt”)


您可以尝试使用administrator运行此脚本。参考

WMI系统有一个存储该数据的类。[grin]您可以调用它,直接使用生成的对象,或者构建一个只包含您想要的内容的对象

它的作用

  • 使用CIM stuff访问指定系统的WinSAT信息
  • 计算评级的平均值
  • 构建一个
    PSCustomObject
    来保存该信息
  • 显示信息
代码

$CIM_WinSAT = Get-CimInstance -ClassName Win32_WinSAT -ComputerName $env:COMPUTERNAME

$Average_WinSAT = ($CIM_WinSAT.PSObject.Properties.Where({$_ -match 'score'}).Value |
    Measure-Object -Average).Average

$WinSAT_Info = [PSCustomObject]@{
    ComputerName = $CIM_WinSAT.PSComputerName
    Perf_WinExp_Average = '{0:N2}' -f $Average_WinSAT
    Perf_WinExp_All = $CIM_WinSAT.WinSPRLevel
    Perf_WinExp_CPU = $CIM_WinSAT.CPUScore
    Perf_WinExp_RAM = $CIM_WinSAT.MemoryScore
    Perf_WinExp_Disk = $CIM_WinSAT.DiskScore
    Perf_WinExp_Vid = $CIM_WinSAT.GraphicsScore
    Perf_WinExp_Vid_D3D = $CIM_WinSAT.D3DScore
    }

$WinSAT_Info
输出

ComputerName        : [MySysName]
Perf_WinExp_Average : 7.02
Perf_WinExp_All     : 6.5
Perf_WinExp_CPU     : 7.3
Perf_WinExp_RAM     : 7.3
Perf_WinExp_Disk    : 7.5
Perf_WinExp_Vid     : 6.5
Perf_WinExp_Vid_D3D : 6.5

这很有帮助,非常感谢。我会多次尝试的。@42-不客气!很高兴能帮一点忙。。。[咧嘴笑]