加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell脚本常用技巧

发布时间:2020-12-15 23:27:11 所属栏目:安全 来源:网络整理
导读: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

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 "UserstPassword" >> $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 $USERt$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" [email?protected]
fi

?

.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读