04 - 变量的扩展应用
2022-03-12 本文已影响0人
舍是境界
多种引号的区别
- 区分三种定界符
- 双引号 "":允许扩展,以$引用其他变量
- 单引号 '':禁用扩展,即便$也视为普通字符
- 反引号 ``:将命令的执行输出作为变量值,$()与反引号等效
touch a b c
touch "a b c"
test=`grep root /etc/passwd`
test=$(grep root /etc/passwd)
read标准输入取值
- read从键盘读入变量值完成赋值
- 格式:read [ -p '提示信息' ] 变量名
- -p可选,-t可指定超时描述,-s设置是否在终端显示输入的内容
#!/bin/bash
read -p "请输入用户名:" name
radp -p "请输入密码:" -s pass
useradd "$name"
echo "$pass" | passwd --stdin "$name"
read -t 3 iname
变量的作用范围
- 局部变量
- 新定义的变量默认只在当前Shell环境中有效,无法在子环Shell环境中使用
- 全局变量
- 全局变量在当前Shell及子Shell环境中均有效
x=11
sh
sh-3.2$ echo $x
export x=11
sh
sh-3.2$ echo $x
11
小结
- 熟悉三种引号的区别
- 通过read定义变量
- 熟悉局部变量与全局变量的区别