zoukankan      html  css  js  c++  java
  • shell脚本常用技巧

    shell脚本常用技巧

    1.获取随机字符串或数字

    ~]#echo $RANDOM | md5sum | cut -c 1-6

     

    ~]#openssl rand -base64 4 | cut -c 1-6

    ~]#uuidgen | cut -c 1-6

    2.获取随机数

    ~]#echo $RANDOM | cksum | cut -c 1-6

    ~]#openssl rand -base64 4 | chsum | cut -c 1-6

    ~]#date +%N | cut -c 1-6

    3.自定义颜色输出字符串

    function echo_color () {
            if [ $1 == "green" ]; then
                echo -e "33[32;40m$233[0m"
            elif [ $1 == "red" ]; then
                echo -e "33[31;40m$233[0m"
            fi
    }
    function echo_color () {
            case $1 in
                green)
                            echo -e "33[032;40m$233[0m"
                          ;;    
                red)
                            echo -e "33[032;40m$233[0m"
                          ;;
                *)
                            echo "Example: echo_color green string"
                esac
    }

    4.批量创建用户

    #!/bin/bash
    DATE=$(date +%F_%T)
    USER_FILE=user.txt
    
    echo_color () {
            if [ $1 == "green" ];then
                echo -e "33[032;40m$233[0m"
            elif [ $1 == "red" ];then
                 echo -e "33[031;40m$233[0m"
            fi
    }
    
    if [ -s USER_FILE ];then
        mv $USER_FILE ${USER_FILE}-${DATE}.bak
            echo_color green "$USER_FILE exist, rename ${USER_FILE-${DATE}.bak"
    fi
    echo "Users	Password" >> $USER_FILE
    echo "-----------------" >> $USER_FILE
    for USER in user{1..10}; do
        if ! id $USER &>/dev/null; then
                PASS=$(echo $RANDOM | md5sum | cut -c 1-8)
                useradd $USER
                echo $PASS | passwd --stdin $USER &>/dev/null
                echo -e $USER	$PASS >>$USER_FILE
                echo "$USER User create successful."
        else
                echo_color red  "$USER User already exists."
        fi
    done

    5.检查软件包是否安装

    #!/bin/bash
    if rpm -q sysstat &>/dev/null; then
            echo "sysstat is already installed!"
    else
            echo "sysstat is not installed!"
    fi

    6.检查服务状态

    #!/bin/bash
    PORT_C=$(ss -anu | grep -c 123)
    PS_C=$(ps -ef | grep -ntpd | grep -vc grep)
    if [ $PORT_C -eq 0 -o $PS_C -eq 0 ];then
            echo "content" | mail -s "summary" dst@example.com
    fi

    .

  • 相关阅读:
    男人
    获得类的基本信息
    jsoup中selector的用法及作用
    心理学导论 1 心理学在搞什么
    全球最佳50科技站点
    国际专利运营新势力
    关于gridview的那点事。。。
    关于.net的ValidateRequest=false失效
    Sql Server 的DataReader 与 DataSet
    Ubuntu9.10下 php(FastCGI PHPFPM)+Nginx+.........
  • 原文地址:https://www.cnblogs.com/qiyunshe-NSD1805/p/9678671.html
Copyright © 2011-2022 走看看