【第22期】观点:IT 行业加班,到底有没有价值?

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

 

 

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

相关文章推荐

SharePoint Infopath表单服务-PowerShell

1. 激活可浏览的表单模板 Set-SPInfoPathFormsService -AllowUserFormBrowserEnabling $true -AllowUserFormBrowser...

SharePoint Infopath表单服务-PowerShell

1. 激活可浏览的表单模板 Set-SPInfoPathFormsService -AllowUserFormBrowserEnabling $true -AllowUserFormBrowserRendering $true 2. 设置数据连接超时 Set-SPInfoPa

欢迎关注CSDN程序人生公众号

关注程序员生活,汇聚开发轶事。

用Aspose.Words将表单信息写入到word模板中

1.首先是要下载Aspose.Words.dll 2.建立word模板我的模板时会议联系函.doc 3.页面 &lt;div id="top"&gt;

easyUI修改信息时表单输入框的默认值

首先,更新更新和添加使用的一样的弹出框,在复制的同时记得改 更新表单的id function update() { var selectedRows = $("#dg").datagrid("...

jquery 获取表单信息

今天群里一个同学问我获取表单 用jquery 或者js 对于很多人老说肯定是很简单了 可是对于我菜鸟来说 测试了很多 觉得还是记下来的好 或许多有些初学者有用 分享毕竟是一件快乐的事情 无标题页
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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