vbs 批量修改文件,bat 批处理文件调用执行vbs,并在cmd窗口打印返回值(vbs运行结果)
作者 佚名
来源 ASP编程
浏览
发布时间 2013-07-09
示例代码(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% 上面的操作只执行了处理文件的步骤 如果不需要提取运行结果,在批处理或主调vbs脚本里直接 运行该vbs文件就行了。 如果在bat 里调用该vbs脚本,并希望打印出提示信息 可以用下面的两种方法来实现: 1,在bat中加入如下代码 复制代码 代码如下: @echo off for /f "delims=" %%a in (''cscript //nologo c:\t.vbs'') do ( set ScriptOut=%%a) echo Result: %ScriptOut% 上面的 echo 打印字符串的格式自己根据需要定义,c:\t.vbs 文件目录修改为你的vbs文件目录。 2,bat 中加入 复制代码 代码如下: @echo off cscript //nologo c:\t.vbs echo -----Modify %ErrorLevel% "AssemblyInfo.cs" files successfully.----- 上面echo 文本格式根据自己的需要定义 %ErrorLevel% 用来获取 上面示例vbs文件结尾 count的值,同样需要修改vbs文件的目录 c:\t.vbs |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 用vbs产生的若干个随机数并写入到一个.txt中的代码下一篇: vbs 多线程下载实现代码
关于vbs 批量修改文件,bat 批处理文件调用执行vbs,并在cmd窗口打印返回值(vbs运行结果)的所有评论