declare -a log_colors
ERROR_COLOR="\033[1;31m"
INFO_COLOR="\033[1m"
DEBUG_COLOR="\033[1;34m"
SUCCESS_COLOR="\033[1;32m"
WARNING_COLOR="\033[1;33m"
DEFAULT_COLOR="\033[0m"
if [ -z $DEBUG ]
then
DEBUG=false
fi
log() {
text=""
end=$(($#-1))
count=0
for i in "$@"
do
count=$[count+1]
if [ $count -gt $end ]
then
break
fi
text="${text} ${i}"
done
text=${text:1}
end=$(($end + 1))
color="${!end}"
echo -e "${color}${text} ${DEFAULT_COLOR}";
return 0
}
log_info() {
log $@ $INFO_COLOR;
}
log_info "hello world"
ssh -t ubuntu@127.0.0.1
执行了log_info
后,最后一样就会报错\033[1m: 语法错误: 需要操作数 (错误符号是 "\033[1m")
,不执行log_info
就不会
ANSI控制码写法不对:
"033[xx;oom AAAAAAAA 033[0m"
xx的范围是40-49代表背景色
oo的范围是30-39代表字体颜色