PowerShell:输出彩色进程信息表单

原创 2007年09月22日 00:26:00

注:本篇文章,未在联系作者以及得到许可的情况下, 禁止以任何形式进行转载。

By:Anders      Mail:katrina520@163.com       

先简略地讲述下脚本运行的大致过程:一开始先以列表的形式输出进程的信息,然后筛选出Handles,ProcessName列表栏下的信息,最后借用一个Cmdlet输出一个彩色的信息表单(表单的颜色标明是以Handles到了一定数量以后来显示的)。如果Handles值为5**的数值就用红色标明,Handles值为6**的数值就用绿色标明出来。

运行结果基本如下:

脚本内容如下:

Get-Process | Select-Object Handles,ProcessName| Sort-Object Handles | Where-Object -FilterScript {$_.Handles -ge 300} | ConvertTo-Html -Title "This is a Process Table" -Body "<H3>This is a Process Table</H3>" | ForEach {$_ -replace "<tr>","<tr bgcolor=cyan>"} | Foreach {if($_ -like "*<td>5??</td>*") {$_ -replace "<tr bgcolor=cyan>","<tr bgcolor=red>"} elseif ($_ -like "*<td>6??</td>*") {$_ -replace "<tr bgcolor=cyan>","<tr bgcolor=green>"} else {$_}}  > D:/ps.htm

Invoke-Item D:/ps.htm

分解(1):

Get-Process | Select-Object Handles,ProcessName| Sort-Object Handles | Where-Object -FilterScript {$_.Handles -ge 300} 

这行脚本是使用了Get-Process列出本地计算机的进程的信息列表,然后使用Select-Object来选择要列出的Handles,ProcessName列表栏目。之后使用Sort-Object 和 Where-Object进行排序和筛选。

在PowerShell的环境下运行结果如下图(看起来十分简洁,一点没错!):

 

分解(2):

ConvertTo-Html -Title "This is a Process Table" -Body "<H3>This is a Process Table</H3>" | ForEach {$_ -replace "<tr>","<tr bgcolor=cyan>"} | Foreach {if($_ -like "*<td>5??</td>*") {$_ -replace "<tr bgcolor=cyan>","<tr bgcolor=red>"} elseif ($_ -like "*<td>6??</td>*") {$_ -replace "<tr bgcolor=cyan>","<tr bgcolor=green>"} else {$_}}  > D:/ps.htm

(增加颜色标明):

这里我们要提到的是,使用了一个cmdlet,它就是ConvertTo-Html。这个cmdlet的主要功能是可以用来创建显示一个或一组对象的HTML页面。之后我们编写一些基本的控制语句来判断Handles数值的大小,到了一定数值后就用特定的颜色来以此标明。

最后在添加一个Invoke-Item cmdlet C:/ps.htm 让脚本在输出表单后自动打开表单^_^

关于ConvertTo-Html的补充:

名称
    ConvertTo-Html

摘要
    创建显示一个或一组对象的 HTML 页。


语法
    ConvertTo-Html [[-property] 
<Object[]>] [-inputObject <psobject>] [-body <string[]>] [-head <string[]>] [-title <string>] [<CommonParameters>]

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

JSP项目输出表单信息

这段时间参与了一个JSP项目,虽然我觉得这种无框架,基本纯JSP的项目有很多很多缺点,但是昨天发的一个JSP文件,我觉得写法很“狠”,分享一下。 "java" contentType = "text...

PowerShell中的同步命令运行及信息输出

在PowerShell中有时候当我们运行一个命令的时候,在控制台上都会直接输出他结果信息,当我们想要把输出信息保存到一个文件的时候我们一般都会直接用管道传递给另一个输出命令将信息保存进一个文本文件里。...

友缘网络信息反馈表单 v2.01

  • 2005年06月03日 05:00
  • 0B
  • 下载

在线表单信息系统

  • 2006年01月19日 09:19
  • 34KB
  • 下载

[Azure]使用Powershell输出Azure订阅下所有虚拟机的ACL信息

这个脚本可以用来输出订阅下所有虚拟机的ACL信息,脚本内容: # 设置订阅ID Select-AzureSubscription -SubscriptionName "XXXXXX" # 获取当前默...

反馈信息表单V2.01

  • 2003年08月30日 00:00
  • 32KB
  • 下载

使用colorgcc让编译器的输出信息彩色高亮

使用colorgcc让编译器的输出信息彩色高亮 往日编译程序的时候,经常遇到一大片的错误,而这一大片的错误当中,其实第一个错误最重要.如果编译器的输出信息是彩色高亮的话,找起来就不费事了 下载...
  • gt945
  • gt945
  • 2012年12月26日 22:32
  • 2484

JavaWeb获取表单信息

  • 2014年09月25日 21:12
  • 2KB
  • 下载

添加信息表单

  • 2013年10月22日 15:04
  • 3KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PowerShell:输出彩色进程信息表单
举报原因:
原因补充:

(最多只允许输入30个字)