• bat自动打包压缩实现


    1.引言

    本文档的编辑目的是为了实bat脚本自动打包功能,包含包的名字命名,压缩文件内外层文件夹的名字;包含svn版本号等;

    2.实现介绍

    1)获取svn号,生成批处理文件

    写一个pak.bat文件写入下列内容,第一句是调用SubWCRev.exe文件传入参数生成pack.tmp.bat文件,第二句是调用生成的pack.tmp.bat文件;第三句是删除生成的文件;

    "../../tools/SubWCRev.exe" ../../ pack.bat.t pack.tmp.bat -f

    call pack.tmp.bat

    del pack.tmp.bat

    pause

    2pack.bat.t文件模板

    @rem win2000下测试通过

    @rem 获取当前时间

    @echo off

    rem 系统不一样,日期格式有差别

    for /f "tokens=1-10 delims=- " %%a in ('DATE /T') do set Date=ams_v1.11.0_svn$WCREV$_%%a%%b%%c_s

    @xcopy /E /Y /I /EXCLUDE:uncopy.txt .*.*  ..ams

    "C:Program FilesWinRARWinRAR.exe" a -df -ibck ..\%Date%.zip ..ams

    Pause

    3pack.tmp.bat真正的打包批处理文件

           可以发现运行pack.bat文件,将文件pack.bat.t传入SubWCRev.exe后生成的pack.tmp.bat与pack.bat.t不同的地方就是文件的$WCREV$参数变成了svn号360515,这其实是用工具SubWCRev.exe获取程序的svn编号;在生成新的打包批处理文件;@标记的行都是备注;for /f 语句是bat的语句,用批处理in后面的数据或者字符串,tokens指定获取的数据个数,delims用来分割数据的分隔符,'DATE /T'表示系统时间,set设置变量;这句话的意思是获取系统时间,将a,b,c标记的年、月、日输入到变量Date中,生成压缩包的名称;xcopy语句是复制原路径下文件,到目标文件夹ams下,..表示当前目录的上一级目录;参数/E表示复制目录和子目录,包括空文件夹;/Y参数表示如果目标目录有该文件则直接覆盖;/I表示如果目标文件夹不存在,又在复制一个以上的文件,则自动创建新的文件夹ams;/EXCLUDE:uncopy.txt表示排查的文件类型,在uncopy.txt中写明不复制的文件名称或者后缀名;.*.*指定当前目录的所有文件;..ams表示目标文件夹;下面一句则是调用压缩程序winRAR,需要系统安装了压缩程序,将安装路径用字符串写在开头,a表示添加文件,-df表示压缩成功后删除原有文件,如果要保留源文件则不加这个参数;-ibck表示在后台运行,不显示压缩界面和进度;后面的参数是压缩文件包的名称,用前面生成的字符串变量Date来命名;在后面是要被压缩的文件夹..ams;

    @rem win2000下测试通过

    @rem 获取当前时间

    @echo off

    rem 系统不一样,日期格式有差别

    for /f "tokens=1-10 delims=- " %%a in ('DATE /T') do set Date=ams_v1.11.0_svn360515_%%a%%b%%c_s

    @xcopy /E /Y /I /EXCLUDE:uncopy.txt .*.*  ..ams

    "C:Program FilesWinRARWinRAR.exe" a -df -ibck ..\%Date%.zip ..ams

    pause

    4uncopy.txt文件的内容

    svn

    .lib

    .exp

    .obj

    .log

    .db

    .ilk

    3.总结

    综上所述,需要文件pak.bat、pack.bat.t、uncopy.txt、SubWCRev.exe四个文件,执行pak.bat文件,pak.bat文件将文件pack.bat.t传入SubWCRev.exe后生成的pack.tmp.bat,获取到svn号,再执行pack.tmp.bat文件,先获取到时间,和svn号一起组成压缩包的名称,然后复制文件到文件夹ams,再将ams压缩成指定名称的压缩包;最后再删除掉复制过程中生成的中间文件夹ams;就是这样一个过程;如果只是简单的复制文件;则直接使用pack.tmp.bat文件和uncopy.txt,按照自己的需求修改,执行即可;文件中的路径根据具体的路径去设置相对路径;最好是放在同一个文件夹下;

    自己编了一个股票监控软件,有如下功能,有兴趣的朋友可以下载;

    (1)   个股监测。监测个股实时变化,可以监测个股大单交易、急速拉升和下降、主力入场和出场、股票最高点和最低点提醒。检测到最高点、最低点、主力进场点、主力退场点、急速拉升点、急速下跌点,给出语音或者声音提醒,不用再时刻看着大盘了,给你更多自由的时间;

    (2)   大盘监测。监测大盘的走势,采用上证、深证、创业三大指数的综合指数作为大盘走势。并实时监测大盘的最高点和最低点、中间的转折点。

    (3)   股票推荐。还能根据历史数据长期或短期走势进行分析,对股市3千多个股票进行分析对比,选出涨势良好的股票,按照增长速度从大到小排序,推荐给你涨势良好的股票;

    下载地址:

    1.0.3版本(修复大盘指数崩溃缺陷)下载地址:

    链接:https://pan.baidu.com/s/1BJcTp-kdniM7VE9K5Kd3vg 提取码:003h

    更新链接:

    https://www.cnblogs.com/bclshuai/p/10621613.html

    bat命令学习链接

    https://www.cnblogs.com/SunShineYPH/archive/2011/12/13/2285570.html

    xcopy详细学习链接

    https://baike.baidu.com/item/xcopy

    bat中RAR命令参数详解

    https://www.cnblogs.com/len0031/p/5888560.html

  • 相关阅读:
    WIN10下搭建reactnative开发Android环境
    node使用JsonWebToken 生成token,完成用户登录、登录检测
    SAP 学习网站汇总
    HTML5 学习网站收集
    优化 优化网站设计
    IoC容器 Spring.NET
    ORACLE 简介及安装
    MVC PureMVC
    HTML5 概要认识
    知识点 NHibernate
  • 原文地址:https://www.cnblogs.com/bclshuai/p/8419450.html
Copyright © 2020-2023  润新知