使用shell脚本常见的一些问题
Jdk版本:jdk-8u102-linux-x64
Tomcat版本:apache-tomcat-7.0.92
Redis版本:redis-5.0.0
由于公司项目的需要,要在多台服务器上面部署一些应用,一个个来部署实在太麻烦了,所以就想到了用脚本部署,然后一点一点的记下来,好记性不如烂笔头
一.jdk脚本的编写
废话不多说,直接上脚本
#!/bin/bash
directory="/tests/test"
jdkname=$directory/jdk-8u181-linux-x64.tar.gz
if [ -f${jdkname}]
then
#判断是否已经安装
if [ $? -eq 0 ]
then
echo "已经安装JDK"
echo "当前JDK版本是"
java -version
exit 1
else
echo "开始解压jdk安装包"
tar zxvf $directory/jdk-8u181-linux-x64.tar.gz
#安装jdk
#配置环境变量
echo --提示:-------开始配置java环境变量!-------
echo "export JAVA_HOME=/java/jdk1.8.0.102" >> .profile
echo "export PATH=\$JAVA_HOME/bin:\$PATH" >> .profile
echo "export CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar" >> .profile
source .profile
echo "查看jdk安装的版本"
java -version
echo --提示:-----java安装完毕---------
fi
else
echo "没有安装包,请先上传安装包"
exit 1
fi
以上就是jdk的安装部署脚本,以下是遇到的问题
问题一:在window上面编辑的脚本放到Linux上面去执行,出现如下错误
原因:
因为操作系统是windows,在windows下编辑的脚本,所以有可能有不可见字符。脚本文件是DOS格式的
即每一行的行尾以\r\n来标识, 其ASCII码分别是0x0D, 0x0A.
1.第一种方法:在linux上面新建一个shell脚本,然后复制window脚本的内容
2.第二种方法: 利用dos2unix 脚本名称,然后回车,再次执行脚本即可
问题二:脚本定义的变量无法识别,原因是定义脚本变量
错误写法:directory = "/tests/test"
正确写法:directory="/tests/test"
shell脚本定义变量=号两边不能有空格
二.总结
以前写shell脚本很少接触,也不知道格式以及它的规范,从这次项目一键部署的工作,让我学到了很多东西。让我成长了不少,每天都是一段旅行,沿途会遇到很多风景,
只要一点点把工作中遇到的问题记下来,对自己也是一个很大的提高。
最新文章
- java 接口的作用和好处
- jQuery Validate + Ckeditor 驗證 textarea 解決方式
- C语言运算符优先级和口诀(转)
- Swift的文档注释
- PHP的语言规范
- vmware-tools(vmware workstation 10.0.4)安装的时候遇到的bug
- JSP脚本元素上机手册
- @synthesize 与@dynamic区别
- (Java 多线程系列)Java 线程池(Executor)
- .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用
- ActivityJump+ActivityManager【Activity之间的跳转和Activity任务栈管理】
- flex弹性布局学习总结
- Gnucash数据库结构
- tar 使用总结
- 【Oracle】Oracle中常用的系统函数
- 微信支付id出现的重复支付解决方法和app应用中多种支付方式之间的对比
- 微信网页跳转页面常见bug处理
- dvwa 源码分析(一) --- setup.php分析
- acdream 1735 输油管道 贪心
- jmete察看结果树和body data乱码问题的解决办法
热门文章
- BZOJ 4003 / Luogu P3261 [JLOI2015]城池攻占 (左偏树)
- Acwing-168-生日蛋糕(搜索, 剪枝)
- html 与 jsp 文件格式区别
- HDU 6040 - Hints of sd0061 | 2017 Multi-University Training Contest 1
- [人物存档]【AI少女】【捏脸数据】1222今日份的推荐
- vue多套样式切换
- Prism框架实战——订餐软件
- web文件夹上传源码
- cogs1355. 读书
- 家庭问题x