iisapp.vbs:IIS应用程序查询脚本
报告为特定的应用程序池提供服务且当前正在运行w3pwp.exe进程的进程标识符(PID)。
语法
iisapp[a/AppPoolName|/pAppPoolID]
参数
/aAppPoolName
指定特定应用程序池的名称。(可选项)
/pAppPoolID
按ID号指定应用程序池。(可选项)
注释
如果未指定应用程序池名或ID,则iisapp列出所有运行应用程序。
仅当使用/s时,才可使用/u和/p命令行选项。必须同时使用/p和/u才能提供用户密码。
Iisext.vbs执行IIS管理器中可用的相同操作。可使用任何一种工具管理IIS网站。
发出命令的计算机必须正在运行WindowsXP或WindowsServer操作系统。用户必须是命令所影响的计算机上的Administrators组成员。
命令所影响的计算机必须是运行带有Internet信息服务(IIS)6.0的WindowsServer的服务器。
示例
下列示例显示在特定的情况下如何使用iisapp。
查看所有运行应用程序
下列示例显示本地计算机上运行的所有应用程序池,按其进程ID(PID)和应用程序池ID(AppPoolID)标识。该命令忽略所有可选参数并接受默认值。
iisapp
Iisapp发出如下响应信息:
正在连接到服务器...已完成。W3WP.exePID:2232AppPoolID:DefaultAppPoolW3WP.exePID:2608AppPoolID:MyAppPool
按进程ID查看运行应用程序
如果知道特定应用程序的PID,则可以使用下列命令检查其状态。
iisapp/p2608
Iisapp发出如下响应信息:
正在连接到服务器...已完成。W3WP.exePID:2608AppPoolID:MyAppPool
格式图例
格式意义
斜体用户必须提供的信息
粗体用户必须完全按照显示的那样键入的元素
省略号(...)可以在命令行中重复多次使用的参数
在括号([])之间可选项目
在大括号({})之间,将选项用竖线(|)隔开。例如:{even|odd}用户必须从中只选择一个选项的选项集
Courierfont代码或程序输出
另外需要注意:
1、在任务管理器中增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid
2、在命令提示符下运行iisapp-a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池
3、到iis中察看该应用程序池对应的网站,就ok了
查询某个站点w3wp.exe占用cpu过高的方法
服务器里面有几个站,所以进程里面的w3wp.exe也有好几个,可是这2天有点不正常,其中有一个w3wp.exe占用CPU接近100%,导致服务器非常卡.
一开始怀疑是被攻击了,因为一般被CC都是这样,但是找不到是哪一个站点.以前在某个站上看过一个方法,试试看.
1.进入命令行.
2.输入命令:iisapp -a
弹出PID值与应用池对应的提示框,最后找到是主站流量比较大.确实这几天流量比较大了.用的还是ACC的数据库,内容页用的都是动态html(伪静态).所以导致w3wp.exe过多占用CPU资源.回收一下应用池,有所好转了.
经测试,偶尔会出现vbs提示没有权限运行的错误,大家可以写个批处理如下:
复制代码 代码如下:
cmd.exe /k cscript.exe //e:vbscript c:\windows\system32\iisapp.vbs -a >>iis_w3wp.txt
即可生成iis_w3wp.txt文件,打开即可查看。