国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

用vbs實現(xiàn)的確定共享文件夾的本地路徑?

2020-07-26 12:03:19
字體:
供稿:網(wǎng)友
如何確定共享文件夾的本地路徑?
問:
您好,腳本專家!如果有 UNC 路徑(例如 //server1/test),可以使用腳本確定共享文件夾(例如 C:/Scripts/Test 文件夾)的本地路徑嗎?
-- JVK
答:
您好,JVK。是的,您說得沒錯
噢,對了;我們幾乎忘了。您能使用腳本確定共享文件夾的本地路徑嗎?您當(dāng)然可以(盡管我們不知道為什么在棒球賽季期間還有人有閑心做這些)。但如果這確實是您想要做的,那么這就告訴您該如何去做:
復(fù)制代碼 代碼如下:

strPath = "http://atl-fs-01/public" 
strPath = Replace(strPath, "http://", "") 
arrPath = Split(strPath, "/") 
strComputer = arrPath(0) 
strShare = arrPath(1) 
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2") 
Set colItems = objWMIService.ExecQuery _ 
    ("Select * From Win32_Share Where Name = '" & strShare & "'") 
For Each objItem in colItems 
    Wscript.Echo objItem.Path 
Next 

正如您所見,我們首先使用了一個典型 UNC 路徑://atl-fs-01/public。順便提一下,我們將該路徑存儲在名為 strPath 的變量中。有了這個路徑名稱之后,我們必須做兩件事。首先,我們必須將計算機名稱 (atl-fs-01) 與共享名稱 (public) 分開。之后,我們必須連接到計算機 atl-fs-01,確定 public 文件夾的本地路徑。那將會有多難?一點也不難。
特別是對于我們這些剛剛設(shè)法戰(zhàn)勝了“無敵”對手的腳本編寫者。我們還沒說吧?最后得分是 4 比 2,盡管我們打得不那么好。肯定是教練非常好 …
讓我們言歸正傳吧。首先,我們必須去掉 UNC 路徑之前的 //。雖然還有其他若干方法,我們只需使用 Replace 函數(shù)將出現(xiàn)的每個 // 替換為空內(nèi)容:
strPath = Replace(strPath, "http://", "")
執(zhí)行這行代碼后,變量 strPath 將等于 atl-fs-01/public。這意味著,我們可以使用 Split 函數(shù)將此值分成數(shù)組:
arrPath = Split(strPath, "/")
根據(jù) / 進(jìn)行分離后,我們最終得到由兩項數(shù)據(jù)組成的數(shù)組:
? atl-fs-01
? public
不用說,這就是我們要找的兩條信息:計算機名稱和共享文件夾名稱。明確這一點后,我們將數(shù)組中的第一項(項 0)賦給名為 strComputer 的變量,將第二項(項 1)賦給名為 strShare 的變量:
strComputer = arrPath(0)
strShare = arrPath(1)
那么,現(xiàn)在我們是不是到了比較困難的部分?不管您相信與否,這正是比較困難的部分;在這以后,我們只需使用標(biāo)準(zhǔn)的 WMI 腳本。我們首先連接到遠(yuǎn)程計算機上的 WMI 服務(wù)。(哪個遠(yuǎn)程計算機?就是 Atl-fs-01,該計算機的名稱存儲在名為 strComputer 的變量中。)然后,我們使用 ExecQuery 方法檢索該計算機上的所有共享文件夾的集合:
Set colItems = objWMIService.ExecQuery _
    ("Select * From Win32_Share Where Name = '" & strShare & "'")
好主意:我們沒有獲得所有共享文件夾,對嗎?相反,我們只獲得了 Name 屬性等于 strShare 變量的值的那些共享文件夾。(在您打一會盹的功夫,strShare 等于 public,也就是我們所要的共享文件夾名稱。)接下來要做的就是建立一個 For Each 循環(huán)來遍歷集合(因為在一臺計算機上的共享文件夾名稱必須唯一,所以該集合中將只有一項),然后回顯 Path 屬性的值。您可能已經(jīng)猜到了,Path 屬性告訴我們 atl-fs-01 上的文件夾的本地路徑:
D:/Scripts/Public
這就是您要獲得一個 UNC 路徑并確定本地文件夾路徑需要做的一切。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 福贡县| 朝阳市| 岚皋县| 石渠县| 油尖旺区| 罗定市| 舟山市| 岐山县| 报价| 敦化市| 波密县| 绿春县| 且末县| 轮台县| 神农架林区| 都昌县| 安义县| 嘉义市| 抚远县| 泾川县| 寿宁县| 盐津县| 柳河县| 什邡市| 台湾省| 邢台市| 河曲县| 溆浦县| 修文县| 平江县| 揭西县| 威远县| 巴东县| 祁阳县| 福州市| 额济纳旗| 邵东县| 四子王旗| 黑水县| 荃湾区| 华安县|