使用BAT一句话命令实现快速合并JS、CSS

   2015-11-20 0
核心提示:这篇文章主要介绍了使用BAT一句话命令实现快速合并JS、CSS,本文使用CMD中的copy命令实现文件的合并,然后写成一个批处理文件执行,更加的方便,需要的朋友可以参考下

在项目开发环境下,我们会把 JS 代码尽可能模块化,方便管理和修改,这就避免不了会出现一个项目自身 JS 文件数量达到 10 个或者更多。

  而项目上线后,会要求将所有 JS 文件合并为 1 个或者几个,手动的操作虽然也不是问题,但每次修改更新都要手动操作合并一遍,这就肯定是个噩梦了。

  这种情况下,一些工具也就随之产生,比如在线合并,一些网站提供js文件上传,然后合并,但这还是很麻烦,如果开发环境没有网络呢?

  这会我就想到了 windows 系统下的 cmd 里的 copy 命令,它虽然是个复制的功能,但实则也是可以实现合并文件的需求,下面就看下这句代码:

复制代码 代码如下:

copy a.js+b.js+c.js abc.js /b

  相信不会太多编程的人阅读上面那句代码也能大致读懂意思:通过 copy 命令将 a.js b.js c.js 合并为一个 abc.js,最后的 /b 表示文件为二进位文件,copy 命令的其它参数可以在 cmd 里输入 copy / 学习,这里就不再细述。

  说到这里,其实 windows 本身就可以完成我们的需求,也不用安装什么其它工具了,下面我们要做的就是将这一切操作更简单。

  我们在项目存放 JS 的文件夹下新建一个 TXT 文件,将代码复制进去,并修改需要合并哪些文件,最后保存并将 TXT 修改为 BAT 后缀,如:

复制代码 代码如下:

copy core.js+hros.app.js+hros.appmanage.js+hros.base.js+hros.copyright.js+hros.desktop.js+hros.dock.js+hros.folderView.js+hros.grid.js+hros.maskBox.js+hros.navbar.js+hros.popupMenu.js+hros.searchbar.js+hros.startmenu.js+hros.taskbar.js+hros.uploadFile.js+hros.wallpaper.js+hros.widget.js+hros.window.js+hros.zoom.js+templates.js+util.js core.min.js /b

  接下来我们双击下那个 BAT 文件,看到效果了吧?这就是我们想要的。以后每次上线前,只需双击下这个文件,系统就会自动合并并生成一个合并好的文件,比起其它什么工具,这个的效率简直无法直视。

  如果你本地还安装过 UglifyJS 这个工具,可以在代码后面加一句压缩的代码,如:

复制代码 代码如下:

copy core.js+hros.app.js+hros.appmanage.js+hros.base.js+hros.copyright.js+hros.desktop.js+hros.dock.js+hros.folderView.js+hros.grid.js+hros.maskBox.js+hros.navbar.js+hros.popupMenu.js+hros.searchbar.js+hros.startmenu.js+hros.taskbar.js+hros.uploadFile.js+hros.wallpaper.js+hros.widget.js+hros.window.js+hros.zoom.js+templates.js+util.js core.min.js /b
uglifyjs core.min.js -m -o core.min.js

  这样每次合并好后就自动压缩了,又省了一步操作。

  CSS 合并同理。

 
标签: BAT 命令 合并 JS CSS
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • Springboot + mybatis + React+redux+React-rou
    前言:            后台搭建完以后开始搭建前端,使用create-react-app搭建项目非常方便。           前端主要是如何向后台请求数据,以及如何使用redux管理state,路由的配置.           前端github地址:  https://github.com
    02-09
  • Java开发学习(四十六)----MyBatisPlus新增语句之id生成策略控制及其简化配置
    Java开发学习(四十六)----MyBatisPlus新增语句
    在前面有一篇博客:Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发,我们在新增的时候留了一个问题,就是新增成功后,主键ID是一个很长串的内容。我们更想要的是按照数据库表字段进行自增长,在解决这个问题之前,我们先来分析下ID该如
    02-09
  • Delphi ADOQuery的属性 locktype、CursorLocati
    以下数据,部分来自网络的收集,部分为自己测试后的原创整理,希望对你有帮助,更新会注明日期。1、locktype  指定用户打开数据集时对数据集的锁定级别:ltUnspecified   //未指定锁定级别ltReadOnly   //Read-only    只读   ,会加快数据读取速度lt
    02-09
  • 自己写的browse.bat与perl写的url_handler.pl的
    以前自己也写过Windows下自动打开多个浏览器测试某个URI,提高浏览器兼容性测试效率。但是写的browse.bat文件还是最基础简陋的@echo offif '%1'=='-c' (start /d "C:\Program Files\Google\Chrome\Application\" chrome.exe -new-tab %2exit)if '%1'=='-f' (s
    02-09
  • 高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器RTMP推流服务器EasyDSS如何在Nodejs中调用bat或sh脚本?
    高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体
    EasyDSS流媒体服务器软件,提供一站式的转码、点播、直播、时移回放服务,极大地简化了开发和集成的工作。点播功能主要包含:上传、转码、分发。直播功能,主要包含:直播、录像,直播支持RTMP输入,RTMP/HLS/HTTP-FLV的分发输出;录像支持自定义保存时长、检
    02-09
  • Java开发学习(四十)----MyBatisPlus入门案例与简介
    Java开发学习(四十)----MyBatisPlus入门案例与
    一、入门案例MybatisPlus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提供效率。SpringBoot它能快速构建Spring开发环境用以整合其他技术,使用起来是非常简单,对于MybatisPlus,我们也基于SpringBoot来构建学习。我们先来回顾下,Sprin
    02-09
  • maven assembly打包生成Java应用启动脚本bat和sh的方法
    maven assembly打包生成Java应用启动脚本bat和
    目录1. maven插件介绍2. 生成启动脚本2.1 创建springboot应用2.2 创建启动测试类2.3 maven依赖配置3. 测试验证3.1 执行命令3.2 生成脚本3.3 启动脚本验证1. maven插件介绍springboot应用通过maven插件appassembler-maven-plugi生成启动脚本bat和sh。根据官网
  • Java开发学习(四十二)----MyBatisPlus查询语句之条件查询
    Java开发学习(四十二)----MyBatisPlus查询语句
    一、条件查询的类MyBatisPlus将书写复杂的SQL查询条件进行了封装,使用编程的形式完成查询条件的组合。这个我们在前面都有见过,比如查询所有和分页查询的时候,都有看到过一个Wrapper类,这个类就是用来构建查询条件的,如下图所示:那么条件查询如何使用Wrap
    02-09
  • Java开发学习(四十五)----MyBatisPlus查询语句之映射匹配兼容性
    Java开发学习(四十五)----MyBatisPlus查询语句
    1、映射匹配兼容性我们已经能从表中查询出数据,并将数据封装到模型类中,这整个过程涉及到一张表和一个模型类:之所以数据能够成功的从表中获取并封装到模型对象中,原因是表的字段列名和模型类的属性名一样。那么问题就来了:问题1:表字段与编码属性设计不同
    02-09
  • Java开发学习(四十八)----MyBatisPlus删除语句之逻辑删除
    Java开发学习(四十八)----MyBatisPlus删除语句
    1、逻辑删除接下来要讲解是删除中比较重要的一个操作,逻辑删除,先来分析下问题:这是一个员工和其所签的合同表,关系是一个员工可以签多个合同,是一个一(员工)对多(合同)的表员工ID为1的张业绩,总共签了三个合同,如果此时他离职了,我们需要将员工表中的
    02-09
点击排行