2018/03/07

March 07 2018 Wednesday

Weather:little rain to cloudy
一、需求:
写一个脚本产生随机3位的数字,而且能够根据用户的输入参数来判断输出几组。 好比,脚本名字为 number3.sh。
执行方法:
bash number3.sh
直接产生一组3位数字。
bash number3.sh 10
插上10组3位数字。mysql

[root@Dasoncheng sbin]# cat q.sh
#!/bin/bash
function aaa ()
{
for i in `seq 1 3`;
do
  n=`echo $RANDOM`
  m=$[$n%10]
  if [ $i -eq 3 ];
  then
      echo $m >/tmp/number3.txt
  else
      echo -ne $m >/tmp/number3.txt
  fi  
  cat /tmp/number3.txt
done
}
if [ -z $1 ];
then
    aaa    
else
    for i in `seq 1 $1`;
    do
      aaa
    done
fi

二、需求:
先判断是否安装http和mysql,没有安装进行安装,安装了检查是否启动服务,若没有启动则须要启动服务。
说明:操做系统为centos6,httpd和mysql所有为rpm包安装。sql

answer referred

一、centos

[root@Dasoncheng sbin]# grep -v "^$" r.sh 
#!/bin/bash
get_a_num() {
    n=$[$RANDOM%10]
    echo $n
}
get_numbers() {
    for i in 1 2 3; do
        a[$i]=`get_a_num`
    done
    echo ${a[@]}
}
if [ -n "$1" ]; then
    m=`echo $1|sed 's/[0-9]//g'`
    if [ -n "$m" ]; then
        echo "Useage bash $0 n, n is a number, example: bash $0 5"
        exit
    else
        for i in `seq 1 $1`
        do
            get_numbers
        done
    fi
else
    get_numbers
fi

二、bash

#!/bin/bash

if_install()
{
    n=`rpm -qa|grep -cw "$1"`
    if [ $n -eq 0 ]
    then
    echo "$1 not install."
    yum install -y $1
    else
    echo "$1 installed."
    fi
}

if_install httpd
if_install mysql-server

chk_ser()
{
    p_n=`ps -C "$1" --no-heading |wc -l`
    if [ $p_n -eq 0 ]
    then
    echo "$1 not start."
    /etc/init.d/$1 start
    else
    echo "$1 started."
    fi
}

chk_httpd
chk_mysqld
本站公众号
   欢迎关注本站公众号,获取更多信息