jdk安装自动化

2 篇文章 0 订阅

写个在linux环境安装Java的脚本(install_java.sh),只需将jdk上传至/opt目录下,执行脚本即可。

#!/bin/bash
#author:zhangyl
#本安装使用jdk版本:jdk-8u191-linux-x64.tar.gz

#将jdk上传到/opt目录下
#/opt目录下检查jdk是否存在
cd /opt
jarFileNum=`ls .|grep jdk-8u191-linux-x64.tar.gz*$|wc -l`
if [ $jarFileNum -ne 1 ];then
        echo "请确保当前目录中有且仅有一个jdk文件"
        exit 1
fi

echo 发现 `ls jdk*` 存在,即将启动

#解压jdk到/usr/local目录
tar -zxvf /opt/jdk-8u191-linux-x64.tar.gz -C /usr/local

#配置jdk环境变量
#sed -i '$a export JAVA_HOME=/usr/local/jdk1.8.0_191\nexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar\nexport PATH=$JAVA_HOME/bin:$PATH'  /etc/profile
#or 以下方式配置
echo 'export JAVA_HOME=/usr/local/jdk1.8.0_191
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH'  >> /etc/profile

#加载环境变量

source /etc/profile

#打印jdk版本
java -version

 jdk-8u191-linux-x64.tar.gz下载链接:https://pan.baidu.com/s/1qdll6ig1NKl0GnqmwqdvaA 提取码:5tm0

 
 
脚本调试问题记录:  
配置jdk环境变量,出现如下问题:
原因是脚本中jdk配置用了双引号:

echo "export JAVA_HOME=/usr/local/jdk1.8.0_191
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH" >> /etc/profile
改为单引号即可解决。

单、双引号区别,以下说明:

1. 单引号:

单引号定义字符串所见即所得,即将单引号内的内容原样输出,或者描述为单引号里面看到的是什么就会输出什么。单引号是全引用,被单引号括起的内容不管是常量还是变量都不会发生替换。

ll=nginx
echo '$ll'

输出:

$ll

2. 双引号:

双引号引用的内容,所见非所得。如果内容中有命令、变量等,会先把变量、命令解析出结果,然后在输出最终内容。双引号是部分引用,被双引号括起的内容常量还是常量,变量则会发生替换,替换成变量内容。

ll=nginx
echo "$ll"

输出:

nginx
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值