批处理脚本学习

@echo off

set "RMS_SourcePath=%~dp0"
set "RMS_CodeBuilder=%RMS_SourcePath%Bin\Tool\CodeBuilder\CHM.Tool.CodeBuilder.exe"
set "RMS_uglifyjs=%RMS_SourcePath%Bin\Tool\uglifyjs.cmd"

set "RMS_EnumCs=%RMS_SourcePath%PDW.AFE.Common\Enums\AutoEnum.cs"
set "RMS_ModelCs=%RMS_SourcePath%PDW.AFE.Models\DataModel"

set "RMS_GridJs=%RMS_SourcePath%PDW.SCM.Web\Resource\Scripts\Page\common\grid.js"
set "RMS_FormJs=%RMS_SourcePath%PDW.SCM.Web\Resource\Scripts\Page\common\form.js"
set "RMS_EnumJs=%RMS_SourcePath%PDW.AFE.Web\Resource\src\data\enum-externd.js"
set "RMS_TableJs=%RMS_SourcePath%PDW.SCM.Web\Resource\Scripts\Page\common\Tables.js"

echo 生成 AutoEnum.cs 文件开始
"%RMS_CodeBuilder%" EnumCs "%RMS_EnumCs%" PDW.AFE.Common.Enums
echo 生成 AutoEnum.cs 文件完成

echo 生成 DataModel 文件开始
"%RMS_CodeBuilder%" ModelCs "%RMS_ModelCs%" PDW.AFE.Models.DataModel
echo 生成 DataModel 文件完成

REM echo 生成 js 脚本开始
REM "%RMS_CodeBuilder%" GridJs %RMS_GridJs%
REM "%RMS_CodeBuilder%" FormJs %RMS_FormJs%
"%RMS_CodeBuilder%" EnumVueJs %RMS_EnumJs%
REM "%RMS_CodeBuilder%" TableJs %RMS_TableJs%
REM echo 生成 js 脚本完成

REM echo 开始压缩业务模块js脚本
REM cd /d "%RMS_SourcePath%PDW.SCM.Web\Resource\Scripts\Page"
REM copy ..\Core\ExtJs\ext-lang-zh_CN.js+ ..\Core\ExtJs\ux\data\PagingMemoryProxy.js+..\Core\ExtJs\ux\TabCloseMenu.js+..\Core\ExtJs\ux\form\MultiSelect.js+..\Core\ExtJs\ux\util\HashMap.js+..\Core\JQuery\jquery.min.js+..\Core\artTemplate\template.js+..\Core\HighCharts\highcharts.js+resourcemanager.js+validatorCustom.js+Common\Md5.js+Common\TabCloseMenu.js+main.js+ModuleTemplate\PanelBase.js+ModuleTemplate\PanelGrid.js+ModuleTemplate\WindowBase.js+ModuleTemplate\WindowBaseNew.js+ModuleTemplate\WindowForm.js+ModuleTemplate\CaseBase.js+ModuleTemplate\BusinessCaseBase.js+ModuleTemplate\MeberRptBase.js+ModuleTemplate\MemberCaseBase.js+ModuleTemplate\MemberCasePanel.js+ModuleTemplate\RadioColumn.js+ModuleTemplate\RadioGroupColumn.js+ModuleTemplate\CheckBoxGroupColumn.js+Common\ItemSelecter.js+Common\AutoComplete.js+Common\ButtonExtend.js+Common\ComboGrid.js+Common\ComboGridRemote.js+Common\FormCommon.js+Common\InputCommon.js+Common\PdwWidget.js+Common\RecycleControl.js+Common\EnumExternd.js+Common\FilterControl.js+Common\FilterGridSelect.js+Common\form.js+Common\grid.js+Common\Tables.js+Common\FilterConfig.js+MultiMerchant\+StoreManagement\ PFE.Util.js/b
REM call "%RMS_uglifyjs%" PFE.Util.js -m -o PFE.Util.min.js
REM echo 结束压缩压缩业务模块js脚本
REM echo 开始压缩登录模块js脚本
REM copy common\EnumExternd.js+login.js+resourcemanager.js+common\formcommon.js PFE.Login.js /b
REM call "%RMS_uglifyjs%" PFE.Login.js -m -o PFE.Login.min.js
REM echo 结束压缩登录模块js脚本

:end

----------------------------------------

@echo off

echo *
echo *
echo * 1. Check ENV
echo * 2. npm update
echo * 3. AFE Build
echo * 4. AFE Dev
echo * 5. GMS Build
echo * 6. GMS Dev
echo *
echo *

choice /c:123456 /m "请输入数字选择功能"

if %errorlevel% == 1 goto check
if %errorlevel% == 2 goto npmupdate
if %errorlevel% == 3 goto afebuild
if %errorlevel% == 4 goto afedev
if %errorlevel% == 5 goto gmsbuild
if %errorlevel% == 6 goto gmsdev

:check

rem 检查是否管理员权限,可能不准,如果一直提示,请注释下面的代码
:: if "%cd%"=="%SystemRoot%\system32" (echo 检查管理员权限完成) else (goto error)

cd /d %~dp0

echo.
echo 检查检查PDW.GMS.Web里的package.json
if not exist package.json (mklink package.json Public\package.json) else (@echo 正常)

echo.
echo 检查node环境
if not exist node_modules npm install

echo.
echo 检查PDW.AFE.Web里的node_modules
if not exist PDW.AFE.Web\Resource\node_modules (mklink /d PDW.AFE.Web\Resource\node_modules ..\..\node_modules) else (@echo 正常)

echo.
echo 检查PDW.AFE.Web里的components
if not exist PDW.AFE.Web\Resource\src\components (mklink /d PDW.AFE.Web\Resource\src\components ..\..\..\WebComponents) else (@echo 正常)

echo.
echo 检查PDW.AFE.Web里的afe framework
if not exist PDW.AFE.Web\Resource\src\afe (mklink /d PDW.AFE.Web\Resource\src\afe ..\..\..\Public\afe) else (@echo 正常)

echo.
echo. 检查PDW.GMS.Web里的node_modules
if not exist PDW.GMS.Web\Resource\node_modules (mklink /d PDW.GMS.Web\Resource\node_modules ..\..\node_modules) else (@echo 正常)

echo.
echo 检查PDW.GMS.Web里的components
if not exist PDW.GMS.Web\Resource\src\components (mklink /d PDW.GMS.Web\Resource\src\components ..\..\..\WebComponents) else (@echo 正常)

echo.
echo 检查PDW.GMS.Web里的afe framework
if not exist PDW.GMS.Web\Resource\src\afe (mklink /d PDW.GMS.Web\Resource\src\afe ..\..\..\Public\afe) else (@echo 正常)

echo.
echo 检查检查PDW.AFE.Web里的.babelrc
if not exist PDW.AFE.Web\Resource\.babelrc (mklink PDW.AFE.Web\Resource\.babelrc ..\..\Public\.babelrc) else (@echo 正常)

echo.
echo 检查检查PDW.GMS.Web里的.babelrc
if not exist PDW.GMS.Web\Resource\.babelrc (mklink PDW.GMS.Web\Resource\.babelrc ..\..\Public\.babelrc) else (@echo 正常)

echo.
echo 检查检查检查检查WebComponents里的b里的.babelrc
if not exist WebComponents\.babelrc (mklink WebComponents\.babelrc ..\Public\.babelrc) else (@echo 正常)

echo.
echo 检查检查PDW.AFE.Web里的.editorconfig
if not exist PDW.AFE.Web\Resource\.editorconfig (mklink PDW.AFE.Web\Resource\.editorconfig ..\..\Public\.editorconfig) else (@echo 正常)

echo.
echo 检查检查PDW.GMS.Web里的.editorconfig
if not exist PDW.GMS.Web\Resource\.editorconfig (mklink PDW.GMS.Web\Resource\.editorconfig ..\..\Public\.editorconfig) else (@echo 正常)

echo.
echo 检查检查WebComponents里的.editorconfig
if not exist WebComponents\.editorconfig (mklink WebComponents\.editorconfig ..\Public\.editorconfig) else (@echo 正常)

echo.
echo 检查检查PDW.AFE.Web里的.eslintrc.js
if not exist PDW.AFE.Web\Resource\.eslintrc.js (mklink PDW.AFE.Web\Resource\.eslintrc.js ..\..\Public\.eslintrc.js) else (@echo 正常)

echo.
echo 检查检查PDW.GMS.Web里的.eslintrc.js
if not exist PDW.GMS.Web\Resource\.eslintrc.js (mklink PDW.GMS.Web\Resource\.eslintrc.js ..\..\Public\.eslintrc.js) else (@echo 正常)

echo.
echo 检查检查PDW.AFE.Web里的package.json
if not exist PDW.AFE.Web\Resource\package.json (mklink PDW.AFE.Web\Resource\package.json ..\..\Public\package.json) else (@echo 正常)

echo.
echo 检查检查PDW.GMS.Web里的package.json
if not exist PDW.GMS.Web\Resource\package.json (mklink PDW.GMS.Web\Resource\package.json ..\..\Public\package.json) else (@echo 正常)

goto end

:npmupdate
cd /d %~dp0
npm update
goto end

:afebuild
cd %~dp0\PDW.AFE.Web\Resource
npm run build & pause
goto end

:afedev
cd %~dp0\PDW.AFE.Web\Resource
npm run dev
goto end

:gmsbuild
cd /d %~dp0
cd %~dp0\PDW.GMS.Web\Resource
npm run build & pause
goto end

:gmsdev
cd %~dp0\PDW.GMS.Web\Resource
npm run dev
goto end

:error
echo.
echo.
echo 请以管理员权限执行该脚本
echo.
echo.

:end
@pause

时间: 2024-11-05 13:28:07

批处理脚本学习的相关文章

【学会偷懒】00. 用批处理脚本启动软件

# 本系列针对零基础和非业内的同学,介绍下我常用的.可能对很多人也有用的偷懒方法和思路 本篇是第1篇,特意讲得非常浅,手把手的讲解,感到智商被侮辱了的同学可跳过相应段落 这系列的总体思路 做人不能太勤快 凡是机械重复的工作,只要ROI(投资回报率)划算,考虑交给机器 成本包括时间成本和风险成本,收益包括节省时间做更重要的事.心情变好和个人成长 这里只讨论自己偷懒,不适合直接套用在组织要不要做自动化的问题上 同样的事不要用同样的方法做3遍 3是虚指 什么是“同样的事”可能一点也不显而易见 发现问题

Auto Hotkey 脚本学习记录 —— 热键与热字符串

参考文档: AutoHotkey 0级入门教程:让重复工作一键完成 (2011-10-24修订) AutoHotkey:帮助win run更方便 AutoHotkey|脚本:用Irfanview把24位真彩图片优化到实际色深 AutoHotkey 学习指南(最近更新: 2012-03-09) AHK 是一个叫 AutoHotKey 的软件的缩写,可以实现很多有趣的功能,可以简化你的重复性工作.比如修改系统快捷键.模拟鼠标键盘按键的按下--我们先来对付一下这些 IT 名词,它们会在后面的教程中经常

Bat 脚本学习 (基础篇)

[转]Bat 脚本学习 2015-01-05 14:13 115人阅读 评论(0) 收藏 举报 基础部分: ====================================================================== 一.基础语法: 1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令.可以使用任何文本文件编辑工具创建和修改. 2.批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环. 3.批处理的

BAT 批处理脚本教程

第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程.了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BAT!"pause把上面的3条命令保存为文件test.bat或者test.cmd然后执行,他就会在屏幕上显示以下二行话:欢迎来到

BAT 批处理脚本教程(如果可以用电脑让事情变的更简单,何不让它变得更简单呢!)

第一章 批处理基础 第一节 常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令. 小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程. 了解了大概意思后,我们正式开始学习.先看一个简单的例子! @echo off echo "欢迎来到非常BAT!" pause 把上面的3条命令保存为文件test.bat或者test.cmd然后执行, 他就会在屏幕上显示以下二

【转】BAT 批处理脚本 教程

第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程.了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BAT!"pause把上面的3条命令保存为文件test.bat或者test.cmd然后执行,他就会在屏幕上显示以下二行话:欢迎来到

bat脚本学习

bat 计算机系统文件类型    学习. 批处理文件,在DOS和Windows(任意)系统中,.bat文件是可执行文件,由一系列命令构成,其中可以包含对其他程序的调用.这个文件的每一行都是一条DOS命令(大部分时候就好像我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件. 批处理(Batch),也称为批处理脚本.顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用

BAT 批处理脚本

第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程.了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BAT!"pause把上面的3条命令保存为文件test.bat或者test.cmd然后执行,他就会在屏幕上显示以下二行话:欢迎来到

DOS批处理脚本

先概述一下批处理是个什么东东.批处理的定义,至今我也没能给出一个合适的----众多高手们也都没给出----反正我不知道----看了我也不一定信服----我是个菜鸟,当然就更不用说了:但我想总结出一个"比较合适的",而且我也相信自己可以把它解释的很清楚,让更多的菜鸟都知道这是个什么东东,你用这个东东可以干什么事情.或许你会因为这篇文章而"无条件爱上批处理",那么我的目的就达到了----我就是要让你爱上它,我就这么拽,你能怎么着??真的,爱有时候就这么拽,就是这么没理由