shell获取随机数和echo -e "\033[字背景颜色;字体颜色m字符串\033[0m"

转载http://www.mamicode.com/info-detail-2512559.html

获取随机字符串或数字
获取随机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 显示光标

发布了22 篇原创文章 · 获赞 7 · 访问量 513

猜你喜欢

转载自blog.csdn.net/bjywxc/article/details/103928062