工作中一个简单的shell程序

下面是工作中用到的链接数据库的shell程序。

#!/bin/bash

if [ $# -le 0 ] ; then
        echo "prase is wrong ,please check first"
        exit
fi
#知识点:
  1,$#代表了命令行的参数数量
  2,
-le表示小于等于,拓展 lt表示小于,gt表示大于,ge表示大于等于,eq表示等于,ne表示不等于
if [ "$1"x != "online"x ] && [ "$1"x != "neibu"x ] ; then 
        echo "you must input online or neibu !"
        exit
fi
#知识点:
  1,
注意到"$1"x最后的x,这是特意安排的,因为当$1为空的时候,上面的表达式就变成了x = onlinex,显然是不相等的。而如果没有这个x,表达式就会报错:[: =: unary operator expected
  2,注意到等号两边各有一个空格
  3,&&符号链接
if [ "$1"x = "online"x ] ; then
        case $2 in
                pm)
                        mysql -h xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;;
                admin)
                        mysql -h xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;;
        esac
elif [ "$1"x = "neibu"x ] ; then
        case $2 in
                pm) 
                        mysql -h xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;;
                admin)  
                        mysql -h xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;;
        esac
fi

知识点:
  case语法
  ase ... in
     ...) do something here 
     ;;
  esac
 

 

mysql启动和停止脚步

#!/bin/bash  
  
case "$1" in  
    start)  
        echo "mysql start..."  
        /etc/init.d/mysqld start  
        ;;  
    stop)  
        echo "mysql stop..."  
        /etc/init.d/mysqld stop  
        ;;  
    restart)  
        echo "mysql restart..."  
        /etc/init.d/mysqld stop  
        /etc/init.d/mysqld start  
        ;;  
esac  
  
exit 0 

 

你可能感兴趣的:(shell)