佳木斯湛栽影视文化发展公司

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

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

熱門標簽:鐵路電話系統(tǒng) 服務(wù)器配置 智能手機 網(wǎng)站文章發(fā)布 美圖手機 檢查注冊表項 銀行業(yè)務(wù) 呼叫中心市場需求
示例代碼(t.vbs)如下:
復(fù)制代碼 代碼如下:

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中加入如下代碼
復(fù)制代碼 代碼如下:

@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 中加入
復(fù)制代碼 代碼如下:

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

上面echo 文本格式根據(jù)自己的需要定義 %ErrorLevel% 用來獲取 上面示例vbs文件結(jié)尾 count的值,同樣需要修改vbs文件的目錄 c:\t.vbs
您可能感興趣的文章:
  • 解決Java調(diào)用BAT批處理不彈出cmd窗口的方法分析
  • 運行bat時隱藏cmd窗口的方法(bat隱藏窗口 隱藏運行bat文件)
  • 使用bat打開多個cmd窗口執(zhí)行g(shù)ulp、node

標簽:新疆 沈陽 長治 河南 紅河 樂山 上海 滄州

巨人網(wǎng)絡(luò)通訊聲明:本文標題《vbs 批量修改文件,bat 批處理文件調(diào)用執(zhí)行vbs,并在cmd窗口打印返回值(vbs運行結(jié)果)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    定结县| 社会| 镇雄县| 三门峡市| 孟津县| 敖汉旗| 休宁县| 隆尧县| 信宜市| 大城县| 广平县| 隆回县| 山丹县| 青铜峡市| 绍兴县| 迁西县| 弋阳县| 光泽县| 娄底市| 仁怀市| 沁阳市| 河津市| 冀州市| 黔西| 利川市| 清流县| 成武县| 沈丘县| 眉山市| 庆元县| 云和县| 吴川市| 德惠市| 明光市| 巴彦县| 酉阳| 平凉市| 六盘水市| 九寨沟县| 武定县| 建平县|