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

首頁 > 編程 > VBScript > 正文

vbs 批量修改文件,bat 批處理文件調(diào)用執(zhí)行vbs,并在cmd窗口打印返回值(vbs運行結(jié)果)

2020-07-26 11:50:25
字體:
供稿:網(wǎng)友
示例代碼(t.vbs)如下:
復制代碼 代碼如下:

Set fso=Wscript.CreateObject("Scripting.FileSystemObject")
flrName="D:/Workspace/src/" 'dir that you need deal with
count=0 'get the count of modified files
function Traversal(dir)
set flr=fso.getfolder(dir)
set fs=flr.files
findstr1="[assembly: SecurityTransparent]" 'find string that need to be replaced
findstr2=replace(findstr1," ","") 'becasuse there is space char in findstr,so add this findstr2
replaceStr="[assembly: AllowPartiallyTrustedCallers()]" 'destination string in replace

for each f in fs
if lcase(f.name)="assemblyinfo.cs" then
set findf=fso.opentextfile(f)
do while findf.atendofstream=false
d=f.datelastmodified 'get modified datetime of current file
alltext=findf.readall

if(InStr(alltext,findstr1) > 0 ) then
s=replace(alltext,findstr1, replaceStr)
count=count+1
findf.close()
'If no findstr2, delete the following elseif block
elseif(InStr(alltext,findstr2) > 0) then
s=replace(alltext,findstr2, replaceStr)
count=count+1
findf.close()

else
findf.close()
exit do
end if

set r=fso.opentextfile(f, 2, true)
r.write s

d2=f.datelastmodified

if d2>=d then exit do
loop

end if
next

set fs=flr.subfolders
for each f in fs
Traversal(f.path)
next

end function

Traversal(flrName)
'msgbox ("Done! "& count & " files were modified successfully.")
wscript.echo "Done! "& count & " files were modified successfully." 'value popup by "wscript.echo" can be received by .bat easily

Wscript.quit count 'this variable "count" in order to get a return value by %ErrorLevel%

上面的操作只執(zhí)行了處理文件的步驟
如果不需要提取運行結(jié)果,在批處理或主調(diào)vbs腳本里直接 運行該vbs文件就行了。

如果在bat 里調(diào)用該vbs腳本,并希望打印出提示信息
可以用下面的兩種方法來實現(xiàn):
1,在bat中加入如下代碼
復制代碼 代碼如下:

@echo off
for /f "delims=" %%a in ('cscript //nologo c:/t.vbs') do (
set ScriptOut=%%a)
echo Result: %ScriptOut%

上面的 echo 打印字符串的格式自己根據(jù)需要定義,c:/t.vbs 文件目錄修改為你的vbs文件目錄。

2,bat 中加入
復制代碼 代碼如下:

@echo off
cscript //nologo c:/t.vbs
echo -----Modify %ErrorLevel% "AssemblyInfo.cs" files successfully.-----

上面echo 文本格式根據(jù)自己的需要定義 %ErrorLevel% 用來獲取 上面示例vbs文件結(jié)尾 count的值,同樣需要修改vbs文件的目錄 c:/t.vbs
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 辽阳市| 杨浦区| 鹤庆县| 阳城县| 南溪县| 全椒县| 漳浦县| 湘乡市| 高尔夫| 和顺县| 图木舒克市| 曲松县| 海原县| 改则县| 阳朔县| 曲沃县| 和顺县| 烟台市| 正蓝旗| 远安县| 建始县| 河北省| 长沙县| 上蔡县| 长治县| 古浪县| 江阴市| 新津县| 昌宁县| 突泉县| 家居| 衡南县| 固镇县| 金门县| 黑山县| 白朗县| 枣强县| 社旗县| 新龙县| 浦江县| 青岛市|