Adsutil.vbs是什么?它是Windows 2003的IIS服務自帶的基于命令行下的IIS管理腳本,位于%SystemDrive%/Inetpub/AdminScripts目錄下,95,426字節。這么大的腳本一看就知道功能肯定非常強大,事實也確是如此。我感覺它就是個命令行下的“Internet 信息服務管理器”(事實上Windows 2000用%SystemDrive%/Inetpub/AdminScripts下原有的20多個VBS進行管理,而到了2003則只剩下Adsutil.vbs一個了,足以說明它的功能是多么強大)。 
    提到Adsutil.vbs就不得不提到MetaBase.bin,這個文件是IIS最重要的配置文件,所有IIS的設置最終都會儲存在這個文件中,IIS管理器和Adsutil.vbs就是通過對這個文件讀取配置信息來顯示給用戶的。它的儲存結構十分像注冊表,是一種樹型儲存結構。IIS管理器和Adsutil.vbs通過一個Adspath的路徑來訪問MetaBase.bin,路徑是由IIS://開頭,其中LocalHost表示本地服務器,而W3svc表示IIS服務,如IIS://LocalHost/w3svc/1表示本地服務器上的第一個WEB站點,IIS://LocalHost/w3svc/1/root/Vdir表示第一個WEB站點根目錄下的Vdir虛擬目錄。 
    Adsutil.vbs基本用法 
    有了這些前置知識,下面再回到Adsutil.vbs來看看它的用法: 
C:/Inetpub/AdminScripts>cscript Adsutil.vbs 
Microsoft (R) Windows Script Host Version 5.6 
版權所有(C) Microsoft Corporation 1996-2001。保留所有權利。 
Usage: 
      ADSUTIL.VBS <cmd> [<path> [<value>]] 
Description: 
IIS administration utility that enables the configuration of metabase properties 
Supported Commands:    //支持的命令,這個最重要 
  GET,SET,ENUM,DELETE,CREATE,COPY,APPCREATEINPROC,APPCREATEOUTPROC,APPCREATEPOOLPROC,APPDELETE,APPUNLOAD, APPGETSTATUS 
配置目錄的存取權限 
C:/Inetpub/Admins cripts>chaccess.vbs -a w3svc/1/ROOT -verbose     
Usage: chaccess <--ADSPath|-a ADSPATH> 控制配置路徑     
[--computer|-c COMPUTER1[,COMPUTER2...]]指定機器名,IP也可。     
[+read|-read] 主目錄下的讀取權限     
[+write|-write]主目錄下的寫入權限     
[+s cript|-s cript]主目錄下的執行許可權限為純腳本     
[+execute|-execute]主目錄下的執行許可權限為腳本和可執行程序     
[+browse|-browse]主目錄下的目錄瀏覽權限     
[--verbose|-v]當前版本     
[--help|-?]     
顯示指定路徑的屬性及狀態信息 
C:/Inetpub/Admins cripts>dispnode help     
Usage: dispnode <--ADSPath|-a ADS PATH OF NODE> [--help|-h]     
ADS PATH - The Path of the node to be displayed     
Example 1: dispnode -a IIS://LocalHost/w3svc顯示當前IIS的主屬性     
Example 2: dispnode --adspath IIS://MachineName/w3svc/1 顯示當前站點的狀態信息     
尋找命名的Web,并顯示節點號、描述、主機名、端口和IP地址     
C:/Inetpub/Admins cripts>findweb     
Web Site Number = 1     
Web Site Des cription = 默認 Web 站點     
Hostname =     
Port = 80     
IP Address =     
C:/Inetpub/Admins cripts>findweb m7.net     
Web Site Number = 2     
Web Site Des cription = m7.net     
Hostname = www.m7.net     
Port = 80     
IP Address = www.m7.net     
顯示指定站點路徑管理樹 
C:/Inetpub/Admins cripts>disptree.vbs help     
Usage: disptree [--ADSPath|-a ROOT NODE] 指定要顯示管理樹的路徑     
[--NoRecurse|-n]     
[--Help|-?]     
創建WEB虛擬站點     
C:/Inetpub/Admins cripts>mkw3site help     
Unknown argument help     
Usage: mkw3site <--RootDirectory|-r ROOT DIRECTORY>網站路徑名     
<--Comment|-t SERVER COMMENT>WEB網站標識     
[--computer|-c COMPUTER1[,COMPUTER2...]]     
[--port|-o PORT NUM]端口     
[--IPAddress|-i IP ADDRESS]IP地址     
[--HostName|-h HOST NAME]主機名     
[--SiteNumber|-n SITENUMBER]     
[--DontStart]不啟動     
[--verbose|-v]     
[--help|-?]     
創建指定站點的虛擬目錄     
C:/Inetpub/Admins cripts>mkwebdir.vbs help     
Usage: mkwebdir [--computer|-c COMPUTER1,COMPUTER2]指定服務器名     
<--website|-w WEBSITE1>指定虛擬站點名     
<--virtualdir|-v NAME1,PATH1,NAME2,PATH2,...>指定虛擬目錄名和目錄文件地址     
[--help|-?]     
Example : mkwebdir -c MyComputer -w "Default Web Site"     
-v "dir1","c:/inetpub/wwwroot/dir1","dir2","c:/inetpub/wwwroot/dir2"     
暫停指定站點的IIS服務     
C:/Inetpub/Admins cripts>pausesrv help     
Usage: pausesrv <--ADSPath|-a server1[,server2,server3...]>     
[--computer|-c COMPUTER1[,COMPUTER2...]]     
[--verbose|-v]     
[--help|-?]     
Example 1: pausesrv -a w3svc/1,msftpsvc/2     
Example 2: pauseftp -c MACHINE1,MACHINE2,MACHINE3 -a w3svc/1,msftpsvc/2     
恢復暫停的站點的IIS服務     
C:/Inetpub/Admins cripts>contsrv.vbs help     
Usage: contsrv <--ADSPath|-a server1[,server2,server3...]>     
[--computer|-c COMPUTER1[,COMPUTER2...]]     
[--verbose|-v]     
[--help|-?]     
Example 1: contsrv -a w3svc/1,msftpsvc/2     
Example 2: contsrv -c MACHINE1,MACHINE2,MACHINE3 -a w3svc/1,msftpsvc/2     
用法同上     
pauseftp.vbs 暫停FTP服務器服務     
contftp.vbs 恢復被暫停的FTP服務     
pauseweb.vbs 暫停Web服務器服務     
contweb.vbs 恢復暫停的WWW服務     
停止指定站點的IIS服務器服務     
C:/Inetpub/Admins cripts>stopsrv.vbs -a w3svc/2     
啟動指定站點的IIS服務器服務     
C:/Inetpub/Admins cripts>startsrv.vbs -a w3svc/2     
停止指定站點的WEB服務器服務     
C:/Inetpub/Admins cripts>startweb.vbs -a w3svc/2     
啟動指定站點的Web服務器服務     
C:/Inetpub/Admins cripts>stopweb.vbs -a 2     
用法同上     
stopftp.vbs 停止FTP服務器服務     
startftp.vbs 啟動FTP服務器服務     
跟蹤腳本的執行     
C:/Inetpub/Admins cripts>synciwam.vbs -h     
Usage: cs cript synciwam.vbs [-v|-h]     
-v verbose: trace execution of the s cript     
-h help: print this message  
實用舉例: 
REM 創建虛擬目錄 
cscript scripts/adsutil.vbs //Nologo //T:300 create W3SVC/1/Root/%1 "IIsWebVirtualDir" 
REM 設置虛擬目錄的屬性 
REM 創建一個進程內應用程序(.Net中沒有inproc與outproc的區別,但舊腳本仍可使用) 
cscript scripts/adsutil.vbs //Nologo //T:60 appcreateinproc W3SVC/1/Root/%1 
REM 設定應用程序的根目錄 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/AppRoot /LM/W3SVC/1/Root/%1 
REM 設定應用程序的顯示名稱 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/AppFriendlyName %1 
應用程序的隔離等級(在.Net中不用設置) 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/AppIsolated %2 
REM 設定虛擬目錄的路徑 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/Path %2 
REM 設定虛擬目錄的執行權限,513是純腳本方式 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/AccessFlags 513 
REM 設定AuthFlags的值,5表示允許匿名訪問和集成Windows驗證 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/AuthFlags 5 
REM 設定DirbrowseFlags的值,DirbrowseFlags是控制目錄瀏覽的開關參數,比較復雜,照填就行了 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/DirbrowseFlags 1073741886 
REM 設定默認文檔 
cscript scripts/adsutil.vbs //Nologo //T:60 set W3SVC/1/Root/%1/DefaultDoc "Default.aspx" 
REM 設定目錄權限(可讀、不可寫、可瀏覽腳本資源、不可查看目錄) 
cscript scripts/chaccess.vbs //Nologo //T:60 -a W3SVC/1/Root/%1 +read -write +script -browse 
REM 設定
新聞熱點
疑難解答