SHELL常见的系统变量解析: $0 当前脚本的名称 $n 当前脚本的第n个参数,n=1,2,…9 $* 当前脚本的所有参数(不包括程序本身) $# 当前脚本的参数个数(不包括程序本身) $? 命令或程序执行完后的状态,一般返回0表示执行成功。 $UID 当前用户的ID $PWD 当前所在的目录 $$ 是脚本运行的当前进程ID号 逻辑运算符解析: -f 判断文件是否存在 eg: if [ -f filename ] -d 判断目录是否存在 eg: if [ -d dir ] -eq 等于 应用于:整型比较 equal -ne 不等于 应用于:整型比较 not equal -lt 小于 应用于:整型比较 letter -gt 大于 应用于:整型比较 greate -le 小于或等于 应用于:整型比较 -ge大于或等于 应用于:整型比较 -a 双方都成立(and) 逻辑表达式 –a 逻辑表达式 -o 单方成立(or) 逻辑表达式 –o 逻辑表达式 -z 空字符串
1 查看你当前使用哪种shell
[root@192 conf]# echo $BASH /bin/bash
2 脚本+x进行调试,排查报错
[root@192 sh]# /bin/bash -x variable.sh + hello variable.sh:行2: hello: 未找到命令 + A=123 + echo 'Print variables equal is 123' Print variables equal is 123
3 -e \n 换行
echo -e "start scripts..\n...."
4 -e \033[32m \033[0m 答应带颜色 [32m可修改为33/34/35/36变颜色]
echo -e "\033[32m start scripts..\n....\033[0m"
5 linux命令,系统内置的变量
[root@192 sh]# echo $PWD /data/sh [root@192 sh]# pwd /data/sh
6 $? 命令或程序执行完后的状态,一般返回0表示执行成功
[root@192 sh]# pwd /data/sh [root@192 sh]# echo $? 0 [root@192 sh]# s bash: s: 未找到命令 [root@192 sh]# echo $? 表示上一条命令执行不成功 127