01-shell-输出颜色
Shell 设置 echo 输出字体颜色 ¶
echo.sh 脚本
- 一般输出为三种颜色,正确,警告,错误,错误会退出 exit,不会向下执行。
# 测试
cat > ./echo.sh <<'EOF'
#!/bin/bash
#=================== 设置 echo 输出字体颜色 ===================
function echo_info() {
echo '========================================================================================='
echo -en "\033[1;32m""\033[3m$1 \033[0m\033[90G \033[1;32m\033[3m [ SUCCES ] \033[0m\n"
}
function echo_warning() {
echo '========================================================================================='
echo -en "\033[1;33m""\033[3m$1 \033[0m\033[90G \033[1;33m\033[3m [ warning ] \033[0m\n"
}
function echo_error() {
echo '========================================================================================='
echo -en "\033[1;31m""\033[3m$1 \033[0m\033[90G \033[1;31m\033[3m [ ERROR ] \033[0m\n"
exit 2
}
echo 1
echo_info "开始计数"
echo 2
echo_warning "上次输出为 2"
echo 3
echo_error "上次输出为 3 错误,不会执行 4"
echo 4
EOF
- 输出结果为下,错误不会向下执行,exit 退出
检测命令 ¶
#!/bin/sh
_=$(command -v docker1);
if [ "$?" != "0" ]; then
printf -- 'You don\'\''t seem to have Docker installed.\n';
printf -- 'Get it: https://www.docker.com/community-edition\n';
printf -- 'Exiting with code 127...\n';
exit 127;
fi;
shell脚本中 if 语法嵌套 ¶
if [ 条件 ] then;
command ...
else
if [ 条件 ] then;
command...
else
command...
fi
fi
shell脚本如何比较字符串 ¶
#!/bin/bash
A="111"
B="222"
[[ "$A" == "$B" ]] && echo "字符串相同" || echo "字符串不同"
bash中有哪些特殊变量 ¶
$0 : 命令行中的脚本名字
$1..$9 : 脚本可接受的参数个数
$# : 命令行参数的数量
$* : 所有命令参数,转换为一个字符串
$@ : 所有命令参数,转换为一个字符串
shell 脚本中对文件的处理 ¶
-d : 文件是否存在且是目录
-e : 文件是否存在
-f : 文件是否存在且是普通文件
-r : 文件存在且是否可读
-s : 文件存在且不为空
-w : 文件存在且可写
-x : 文件存在且可执行
脚本中如何得到来自用户终端的输入值 ¶
#!/bin/bash
#
#auther: mage team
#
read -p "Please Enter Your Chooice: " STR
echo "${STR}"
如何引用一个变量 ¶
- $VAR_NAME
- ${VAR_NAME} #建议这种用法
VAR_NAME_A=AAA VAR_NAME_B=BBB echo $VAR_NAME_A_$VAR_NAME_B echo ${VAR_NAME_A}_${VAR_NAME_B} 输出结果为 BBB AAA_BBB
break 有什么用
break命令一个简单的用途是退出执行中的循环。我们可以在while和until循环中使用break命令跳出循环