shell脚本

获取随机字符串或数字

获取随机8位字符串

#!/bin/bash
#方法1,$RANDOM产生5位随机数,md5sum加密,然后截取8位
echo $RANDOM | md5sum | cut -c 1-8
#方法2
openssl rand -base64 4
#方法3
cat /proc/sys/kernel/random/uuid | cut -c 1-8

运行结果

0240b838
MayR3g==
9467a4cf

获取随机8为数字

#!/bin/bash
#方法1,cksum:打印CRC效验和统计字节
echo $RANDOM | cksum | cut -c 1-8
#方法2:
openssl rand -base64 4 | cksum|cut -c 1-8
#方法3
date +%N | cut -c 1-8

运行结果

88342984
20663999
49795828

定义一个颜色输出字符串函数

方法1

#!/bin/bash
function echo_color(){
    if [ $1 == "green" ]; then
        echo -e "\033[32;40m$2\033[0m"
    elif [ $1 == red ]; then
        echo -e "\033[31;40m$2\033[0m"
    fi
}
echo_color red "test"

方法2

#!/bin/bash
function echo_color(){
   case $1 in
       "green")
       echo -e "\033[32;40m$2\033[0m";;
       "red")
              echo -e "\033[31;40m$2\033[0m";;
       *)
           echo "Example:echo_color red string"
   esac
}
echo_color red "test"

说明:

  echo -e "\033[41;36m something here \033[0m"

  其中41的位置代表底色, 36的位置是代表字的颜色
  那些ascii code 是对颜色调用的始末.:  \033[ ; m …… \033[0m

  字背景颜色范围:40----49 
    40:黑 
    41:深红 
    42:绿 
    43:黄色 
    44:蓝色 
    45:紫色 
    46:深绿 
    47:白色 
  字颜色:30-----------39 
    30:黑 
    31:红 
    32:绿 
    33:黄 
    34:蓝色 
    35:紫色 
    36:深绿 
    37:白色 
================ANSI控制码的说明 
    \033[0m 关闭所有属性 
    \033[1m 设置高亮度 
    \033[4m 下划线 
    \033[5m 闪烁 
    \033[7m 反显 
    \033[8m 消隐 
    \033[30m -- \33[37m 设置前景色 
    \033[40m -- \33[47m 设置背景色 
    \033[nA 光标上移n行 
    \033[nB 光标下移n行 
    \033[nC 光标右移n行 
    \033[nD 光标左移n行 
    \033[y;xH设置光标位置 
    \033[2J 清屏 
    \033[K 清除从光标到行尾的内容 
    \033[s 保存光标位置 
    \033[u 恢复光标位置 
    \033[?25l 隐藏光标 
    \033[?25h 显示光标

创建用户

 

#!/bin/bash
#添加用户,并将错误信息输入到err.log文件中
useradd xudongling 2> /tmp/err.log
#设置密码为123456
echo 123456 | passwd --stdin xudonglin &> /dev/null

 

posted @ 2018-11-08 22:25  xdl_smile  阅读(139)  评论(0编辑  收藏  举报