shell 脚本示例

1、9*9乘法表:

#!/bin/bash
for((i=1;i<=9;i++));
        do for((j=1;j<=i;j++));
                do echo -ne "${i}*${j}=$[${i}*${j}]\t"  ##-ne中-n代表不换行,-e代表识别其中的特殊字符如\t
                done
        echo
        done

 

2、9*9逆乘法表:

#!/bin/bash
for((i=9;i>=1;--i))
        do for((j=i;j>=1;j--))
                do echo -ne "$i*$j=$((i*j))\t"
                done
        echo
        done

 

3、自动安装jdk:

  a、获取到这个安装包,通过使用httpd服务,用wget方式去下载到本机

  b、解压到对应的安装目录

  c、配置环境变量

  d、收尾工作:删除一些不必要的东西,还有做一些环境变量生效的工作

#!/bin/bash

BASE_SERVER=hadoop
yum install -y wget
wget $BASE_SERVER/mysoft/jdk-7u80-linux-x64.tar.gz
tar -zxvf jdk-7u80-linux-x64.tar.gz -C /usr/local
cat >> /etc/profile << EOF
export JAVA_HOME=/usr/local/jdk1.7.0_80
export PATH=\$PATH:\$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
EOF

rm -rf /root/jdk-7u80-linux-x64.tar.gz
rm -rf /root/jdk-7u80-linux-x64.tar.gz.*
source /etc/profile
java -version

 

4、自动删除jdk:

  a、删除JDK的安装目录 /usr/local/jdk_1.7.0_80

  b、把/etc/profile这个配置文件里面的关于jdk的环境变量给删除

  c、执行一下source /etc/profile

#!/bin/bash

source /etc/profile
JAVA_PATH_STR=`which java`

JAVA_PATH=${JAVA_PATH_STR%/*/*}

echo "JAVA_HOME":${JAVA_HOME}

rm -rf ${JAVA_HOME}

sed '/JAVA_HOME/d' /etc/profile > /etc/profilecopy
rm -rf /etc/profile
mv /etc/profilecopy /etc/profile
source /etc/profile

 

5、集群批量自动安装JDK

#!/bin/bash

SERVERS="hadoop02 hadoop03 hadoop04"
PASSWORD=hadoop
BASE_SERVER=hadoop

for SERVER in $SERVERS
do
        scp installJDK.sh root@$SERVER:/root
        ssh root@$SERVER chmod 755 installJDK.sh
        ssh root@$SERVER /root/installJDK.sh
        ssh root@$SERVER rm -rf /root/installJDK.sh
done

 

6、自动安装Mysql

#!/bin/bash

## auto install mysql

service mysql stop
EXISTS_RPMS=`rpm -qa | grep -i mysql`
echo ${EXISTS_RPM}
for RPM in ${EXISTS_RPMS}
do
        rpm -e --nodeps ${RPM}
done

rm -fr /usr/lib/mysql
rm -fr /usr/include/mysql
rm -fr /etc/my.cnf
rm -fr /var/lib/mysql

wget http://hadoop/mysoft/MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm
wget http://hadoop/mysoft/MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm

rm -rf /root/.mysql_secret
rpm -ivh MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm

PSWD=`cat /root/.mysql_secret | awk -F ':' '{print $4}'`
PSWD=${PSWD:1:16} ######删除最前面那个空格

rpm -ivh MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm

rm -rf MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm
rm -rf MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm

echo "install mysql server and client is done .!!!!!"

echo "random password is:${PSWD}"

service mysql start

 

7、mysql初始化脚本

#!/bin/bash

mysql -uroot -proot << EOF
        GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
        FLUSH PRIVILEGES;
        use mysql;
        select host, user, password from user;
EOF

 

posted on 2018-03-20 11:43  乱世浪子  阅读(152)  评论(0)    收藏  举报