7.1 实验介绍
7.1.1 实验介绍
在对系统进行运维时,shell 脚本给了我们很大帮助。通过 shell 脚本,可以大大减少工作量。
本实验主要介绍 shell 脚本的概念及使用。
7.1.2 实验目标
掌握全局变量及局部变量;
掌握位置化参数使用;
掌握 shell 中的特殊字符;
掌握常用的 shell 语句。
7.2 shell 变量
7.2.1 用户变量的定义
步骤 1
执行如下命令,设置自定义局部变量。
[root@openeuler ~]# dir=/usr/tmp/
[root@openeuler ~]# echo $dir
/usr/tmp/
[root@openeuler ~]# today=Sunday
[root@openeuler ~]# echo $today
Sunday
[root@openeuler ~]# echo $Today
//无回显
[root@openeuler ~]# str=“Hapy New Year!”
[root@openeuler ~]# echo “Wish You $str”
Wish You Hapy New Year!
###作为交互式输入手段,可以利用 read 命令由标准输入(即键盘)上读取数据,然后赋给指定的变量。
其一般格式是:read 变量 1 [变量 2…]
[root@openeuler ~]# read name
openeuler
//此处输入 openeuler
[root@openeuler ~]# echo $name
openeuler
[root@openeuler ~]# read a b c
kunpeng 2020 huawei
#此处输入 kunpeng 2020 huawei
[root@openeuler ~]# echo $a
kunpeng
[root@openeuler ~]# echo $b
2020
[root@openeuler ~]# echo $c
huawei
步骤 2
执行如下步骤,配置用户变量。
[root@openEuler ~]# vim .bash_profile
~/.bash_profile 是用户独享的配置文件
#在文件最后新增一行,修改完成后保存退出:
a=1000
[root@openEuler ~]# echo $a
#未更新变量文件时,a 值未发生变化
kunpeng
[root@openEuler ~]# source .bash_profile #更新变量文件后,a 值发生变化
[root@openEuler ~]# echo $a
1000
[root@openEuler ~]# bash
#打开一个新的 bash
[root@openEuler ~]# echo $a #a 变量未定义
[root@openEuler ~]# exit
#退出新打开的 shell
[root@openEuler ~]# su - root#以登录的方式切换用户,此时会自动读取.bash_profile 文件
[root@openEuler ~]# echo $a #a 变量值生效
1000
[root@openEuler ~]# exit
#退出当前的登录 shell