PowerShell脚本远程获取多台服务器系统状态(CPU、内存、运行服务)


#本脚本获取远程服务器的CPU使用情况

#选择服务器名称的录入方式 
if (!$continue) 

$continue = Read-Host "是否手动输入服务器名称,请选择 Y 手动输入 或 N 从文本文件读取" 

if ($continue -ne "N") 

#手动批量录入服务器名称 
$listadd = $false 
$list = 1 
$ComPList = New-Object System.Collections.ArrayList #定义PSList数组

While ($listadd -eq $false) 

    if($ComPName -eq "N") 
    { 
       $listadd = $true 
    } 
    else 
    {     
       $ComPName = Read-Host "请输入第 $list 台服务器名称(按N键结束输入)" 
       if($ComPName -ne "N") 
       { 
          $ComPList.Add("$ComPName") 
          $list += 1 
        }      
    } 


else 

$filepath = Read-Host "请输入文本文件地址(文本文档内参数需每输入一个换一次行)" 
$ComPList = Get-Content "$filepath" 
}

#输出结果 
foreach ($Server in $ComPList) 

#服务器CPU、内存、硬盘使用信息 
$cpu = gwmi –computername $Server win32_Processor 
$men = gwmi -ComputerName $Server win32_OperatingSystem 
$Disks = gwmi –computername $Server win32_logicaldisk -filter "drivetype=3" 
$Havecpu = "{0:0.0} %" -f $cpu.LoadPercentage 
$Allmen = "{0:0.0} MB" -f ($men.TotalVisibleMemorySize / 1KB) 
$Freemen = "{0:0.0} MB" -f ($men.FreePhysicalMemory / 1KB) 
$Permem = "{0:0.0} %" -f ((($men.TotalVisibleMemorySize-$men.FreePhysicalMemory)/$men.TotalVisibleMemorySize)*100) 
Write-Host "服务器$Server 当前系统状态信息如下:" -ForegroundColor Red 
Write-Host "============================================================" 
Write-Host "CPU利用率: $Havecpu"   -ForegroundColor Green 
Write-Host "内存总数:$Allmen" -ForegroundColor Green 
Write-Host "内存可用数:$Freemen" -ForegroundColor Green 
Write-Host "内存使用率:$Permem" `n -ForegroundColor Green 
foreach ($Disk in $Disks) 

    $Size = "{0:0.0} GB" -f ($Disk.Size / 1GB ) 
    $FreeSpace = " {0:0.0} GB" -f ($Disk.FreeSpace / 1GB) 
    $Used = ([int64]$Disk.size - [int64]$Disk.freespace) 
    $SpaceUsed = " {0:0.0} GB" -f ($Used / 1GB) 
    $Percent ="{0:0.0} %" -f ($Used * 100 / $Disk.Size) 
    Write-Host $Disk.deviceid $Disk.volumename"盘总空间: $Size" -ForegroundColor Green 
    Write-Host $Disk.deviceid $Disk.volumename"空闲空间: $FreeSpace" -ForegroundColor Green 
    Write-Host $Disk.deviceid $Disk.volumename"使用空间: $SpaceUsed" -ForegroundColor Green 
    Write-Host $Disk.deviceid $Disk.volumename"使用百分比: $Percent `n" -ForegroundColor Green 

Write-Host "============================================================" 
#获取当前正在运行的服务名称 
Write-Host "服务器$Server 当前正在运行的服务如下:" -ForegroundColor Red 
Write-Host "============================================================" 
get-service -ComputerName $Server| where-object {$_.Status -eq "Running"} | format-table -property Name,DisplayName -auto 
Write-Host "============================================================" 
}

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

运行效果如下:




  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用PowerShell连接远程服务器的SSH,你可以按照以下步骤进行操作: 1. 首先,确保你已经在Windows端生成了SSH密钥文件。你可以使用以下命令在PowerShell中生成密钥文件: ``` ssh-keygen -t rsa ``` 这将在你的用户目录下的.ssh文件夹中生成密钥文件。 2. 接下来,你需要将生成的公钥文件(id_rsa.pub)复制到远程服务器的`~/.ssh/authorized_keys`文件中。你可以使用以下命令将公钥文件复制到远程服务器: ``` cat ~/.ssh/id_rsa.pub | ssh user@hostname 'cat >> ~/.ssh/authorized_keys' ``` 其中,`user`是你在远程服务器上的用户名,`hostname`是远程服务器的IP地址或域名。 3. 现在,你可以使用以下命令在PowerShell中连接到远程服务器: ``` ssh user@hostname ``` 其中,`user`是你在远程服务器上的用户名,`hostname`是远程服务器的IP地址或域名。 请注意,以上步骤中的`user`和`hostname`需要替换为你实际使用的用户名和远程服务器的IP地址或域名。另外,确保你已经在本地配置好了SSH连接文件(config文件),并且密钥文件的路径正确。 希望这些信息对你有帮助!\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [Win10 PowerShell,通过SSH公钥远程连接Linux服务器](https://blog.csdn.net/WooPomjay/article/details/122627607)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [电脑自带的cmd/Powershell连接远程服务器(实用技巧)](https://blog.csdn.net/weixin_44187271/article/details/122864018)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值