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...

添加信息表单

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

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

在线表单信息模拟系统

  • 2009-04-26 13:08
  • 33KB
  • 下载

如何在浏览器控制台(console)里输出彩色样式调试信息

最近我在研究Google+,因为发现它里面实现以一些非常奇特的效果。我打开谷歌浏览器的控制台,看到了下面的信息:警告!使用此控制台可能会让攻击者利用Self-XSS(自跨站脚本)攻击来冒充你,并窃取你...

社工信息录入表单ASP

  • 2010-07-02 13:29
  • 45KB
  • 下载

Head First javaScript_#7表单信息验证

Head First javaScript
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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