一. 基础知识部分:
· 变量知识概念
1)常规变量:
临时定义方式: 在脚本中或命令行中设置 oldboy=123
永久定义方式: 在特殊系统变量文件中设置 /etc/profile /etc/bashrc ~/.bashrc ~/.bash_profile
设置变量:
① 进行字符串设置 name="oldboy" name=”123456" name="oldboy edu python"
② 进行变量调用 info="python" name="$info"
③ 进行命令信息设置 IP_info="$(hostname -i)" IP_info=`hostname -i`
2)环境变量:
export INFO="XXXX"
有export定义变量:对当前登录窗口所有shell都生效
无export定义变量:只对当前shell生效
变量赋值方式:
① 直接赋值: a=1 b=2 echo $a $b
service 启动或重启或停止服务
② 传参赋值: a=$1 b=$2 ./test.sh oldboy oldgirl ./test.sh "oldboy oldgirl" oldman
③ 交互赋值: 需要交互询问信息进行赋值
read -p "请输入学员姓名: " name age
echo $name >> class.txt
echo $age >> class.txt
3) 特殊变量
$0: 用于获取脚本名称信息,直接显示脚本名称和路径信息
echo "$0脚本执行失败,请检查脚本逻辑"
$#:统计出脚本的传入参数总数
$*:输出脚本所有参数信息
$@:输出脚本所有参数信息
$?:输出命令执行返回值 利用返回值可以判断命令是否执行成功
0 表示操作执行成功
非0 表示操作执行失败
$$ 获取一个脚本执行PID信息
$! 获取上一个程序或脚本后台运行pid信息
sh test.sh & --- 让脚本后台运行
$_ 获取脚本的最后一个参数信息
sh test.sh a b c
echo $_
c
· 脚本执行方法
① 直接授权脚本执行权限,直接运行脚本
./test.sh /root/test.sh
② 利用命令信息执行脚本
sh ./test.sh bash ./test.sh --- 利用命令解释器执行脚本
source ./test.sh --- 脚本之间信息加载调用
· 系统正则知识
基础正则符号:^ $ ^$ . * .* [] [^]