是这样的,我本来不想学shell的,因为我觉得这玩意太麻烦了,后来我接触了Makefile发现Makefile更麻烦,所以我又回归shell的怀抱了(总得干点什么水本周工作)。

其实用脚本安装软件蛮麻烦的,起码写脚本的功夫我就直接装上了,而且对文件存放什么的严格要求,但是在某年某月的某一天我被喊去出差,然后抱着四个虚拟机光插件就装了快两天……我觉得还是有必要搞搞的,搞好了就不用出差了嘛。

以Centos7下的java 1.8.0 安装为例,常规安装方式如下
https://blog.csdn.net/mandiheyanyu/article/details/122454536

如果采用脚本的方式,首先新建一个.sh文件

vim test.sh

修改test.sh中的内容

#! /bin/bash
for j in `rpm -qa | grep java`
do
	rpm -e --nodeps $j
done

mkdir /usr/local/java
mv jdk-8u171-linux-x64.tar.gz /usr/local/java
cd /usr/local/java
tar -zxvf jdk-8u171-linux-x64.tar.gz

echo "export JAVA_HOME=/usr/local/java/jdk1.8.0_171" >> /etc/profile
echo "PATH=\$PATH:\$JAVA_HOME/bin" >> /etc/profile
source /etc/profile
echo `java -version`

当然以上脚本能正确运行的前提条件是这个系统里没有在/etc/profile中写入过java的路径(或许可以再优化一下,先提前读一下做一下判断什么的),并且jdk-8u171-linux-x64.tar.gz文件和test.sh放在同级路径下。

修改文件权限

chmod a+x test.sh

执行脚本

./test.sh

其他shell相关链接或资料

Linux shell 执行修改配置文件中的内容
https://www.cnblogs.com/Hackerman/p/9516115.html

Linux中执行 .sh 的方法
https://www.cnblogs.com/xiongduang/p/6736280.html

将执行结果存放到数组

i=0
list=()
for j in `ls *`
do
	list[$i]=$j
	i=`expr $i + 1`
done
echo ${list[@]}
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐