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
本站公眾號
   歡迎關注本站公眾號,獲取更多信息