国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 余姚市| 武山县| 上饶市| 霍林郭勒市| 静宁县| 陆良县| 贡嘎县| 朔州市| 琼中| 临桂县| 江达县| 西和县| 裕民县| 广河县| 板桥市| 格尔木市| 古蔺县| 门源| 普定县| 鄂尔多斯市| 丰台区| 永新县| 青州市| 饶阳县| 黄陵县| 邹平县| 临西县| 尤溪县| 新津县| 永安市| 周宁县| 洛宁县| 普兰店市| 河南省| 吉木萨尔县| 龙泉市| 综艺| 鄄城县| 慈利县| 桂平市| 玛沁县|