shell脚本编写教程(基于项目)
最近几天公司要上线3.0版本了,需要将2.0版本的数据迁移到3.0数据库中,由于数据库改动非常大,所以采用了程序动态迁移数据。
一、环境
3.0项目
数据迁移项目
二、目的
用shell脚本将3.0项目的依赖全部添加到数据迁移项目中
三、原因
需要3.0项目的dao层将2.0的数据添加到数据库中
1、数据迁移项目(结构图):
2、编写shell脚本,实现动态导入
#!/bin/bashsourcePackage=E:/yg-gtu-es/gt3server-es-account-namepointPackage=C:/Users/fengy/Desktop/gt3datamover/libs/cd ${sourcePackage}gradle cleangradle buildcp ${sourcePackage}/gtmodel/build/libs/gtmodel-0.0.1-SNAPSHOT.jar ${pointPackage}cd ${pointPackage}
参数解释:
#!/bin/bash:shell脚本的表头,为了指定解析器。也可以写成 #!/bin/sh。(必须指定)
sourcePackage:源项目文件目录(“3.0项目”)
pointPackage:目标文件目录的libs文件夹(“数据迁移项目”)
cd ${sourcePackage}:先进入源项目
gradle clean:由于项目依赖管理使用gradle,所以使用gradle的命令。如果是maven,可以使用maven clean。目的都是清除之前的编译的内容。
gradle build:gradle生命周期(编译,测试,打包,部署,安装)都包含。如果是maven,则使用maven build。目的是将项目的所有依赖打包。
cp:将源项目文件的model子项目编译后的jar依赖复制到当前目录的libs文件夹下,之后在数据迁移项目中就可以使用3.0项目的API了。
cd ${pointPackage}:最终又回到目标文件。
注:有Linux命令操作经验的小伙伴,一看就明白了!
3、运行脚本
或者使用cmd进入项目运行build.sh也可以。
由于我安装了git,所以默认使用git来跑。如果跑不了,建议先安装一个git。
git下载地址:https://www.git-scm.com/download/
4、查看运行结果
5、shell脚本教程到此结束,谢谢观看!
shell脚本编写教程(基于项目)相关推荐
- Linux 中shell脚本编写教程
1.文本处理工具 1.1 grep工具 Linux grep 命令用于查找文件里符合条件的字符串. grep [选项] '关键字 文件名 grep 指令用于查找内容包含指定的范本样式的文件,如果发现 ...
- Linux Shell脚本入门教程系列之(一)Shell简介
本文是Linux Shell脚本系列教程的第(一)篇,更多shell教程请看:Linux Shell脚本系列教程 想要学习linux,shell知识必不可少,今天就给大家来简单介绍下shell的基本知 ...
- Linux的shell脚本函数教程
Linux的shell脚本函数教程 一.shell介绍 二.shell函数的介绍 三.函数的定义 四.shell中函数使用示例 一.shell介绍 二.shell函数的介绍 三.函数的定义 四.she ...
- 一个很不错的bash脚本编写教程
一个很不错的bash脚本编写教程 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很 ...
- bash 与 shell脚本编写指南
bash 与 shell脚本编写指南 bash 与 shell脚本编写指南 bash基本命令 man与info命令 遍历目录命令 文件与目录列表命令 处理文件相关命令 处理目录命令 查看文件内容 通过 ...
- 2021-04-09 linux的shell脚本简单教程
linux 的基本操作(编写shell 脚本) 如果文章中的图片再次挂掉了,麻烦请去公众号内查看 终于到shell 脚本这章了,在以前笔者卖了好多关子说shell脚本怎么怎么重要,确实shell脚本 ...
- shell 脚本编写 if else then
shell 脚本编写 if else then if ....; then .... elif ....; then .... else .... fi 大多数情况下,可以使用测试命令来对条件进行测试 ...
- Shell awk文本处理,shell脚本编写
Shell awk文本处理,shell脚本编写 一:内容包含awk.变量.运算符.if多分支 <a>语法糖: awk [options] 'commands' files option - ...
- Linux Shell脚本入门教程系列之(十六) Shell输入输出重定向
本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为 ...
最新文章
- 一文看懂Python的控制结构:for、while、if…都有了
- Skipping failed optional dependency /chokidar/fsevents
- [html] 关于<form>标签的enctype属性你有哪些了解?
- java http 下载文件_JAVA通过HttpURLConnection 上传和下载文件的方法
- SGU 222 Little Rooks
- python绘图库seaborn_Matplotlib Toolkits:python高级绘图库seaborn
- mysql 2100,MySQL 实现准实时的表级别DML计数
- python中 tolist_python 列表,数组,矩阵两两转换tolist()的实例
- STM32工作笔记0011---认识跳线帽
- 【Java从0到架构师】git 入门和基本应用
- Echart词云图自定义形状,少词显示不全,配置项相关设置
- 基于Java+Springboot+vue体育用品销售商城平台设计和实现
- PHP从入门到接到外包合同,再到放弃
- HashMap的七种遍历方式
- 股票涨跌的心理学原理: 前景理论
- C++面向对象(三):类和对象
- 数据模拟:利用Java模拟数据(姓名,邮箱,地址,电话等信息,时间,工资,1-10随机数)并存入mysql
- ML之ME:Best-KS分箱/KS值(分类预测问题中评价指标、数据分箱方法)的简介(KS与ROC的关系)、使用方法、案例应用之详细攻略
- 求二维整数数组中最大子数组的和(结对作业)
- 数据库课程设计--公交车管理系统总结(Qt学习小结)
热门文章
- Mingw编译带lib的c代码出现cannot find 错误的解决
- 阻塞和挂起的区别和联系
- php storm官网,phpstorm
- 华为OD面经以及上岸经验总结
- “下载”中“载”的发音应该读几声——计算机学生视角
- 阎王点赞!地府后台管理系统驾到,速来销生死簿名单!附地址
- 基于FPGA的DDS算法实现(可调幅值,附ISE联合Modelsim仿真结果)
- GNN-CS224W: 17 Scaling Up GNNs
- java merkle树,Java实战手写区块链中的Merkle树
- 机器学习中的树模型下——集成类树