Shell自动化运维学习

执行shell脚本的多种方式:

1.[root@localhost ~]# bash file1    //第一种方式
2.[root@localhost ~]# sh file1    //第二种方式
3.[root@localhost ~]# . file1    //第三种方式
4.[root@localhost ~]# source file1    //第四种方式

其中,1、2方式是子shell执行,3、4方式是本shell执行

定义变量:

[root@localhost ~]# name="majiajun 123"  //注意!等号两边不能有空格。且如果变量的值有空格,需要用引号包含

使用变量:

[root@localhost ~]# echo $name

 重复定义变量:

[root@localhost ~]# name=majiajun
[root@localhost ~]# name=123
[root@localhost ~]# echo $name        //重复定义变量会导致变量的值被覆盖
输出结果:123

 变量追加内容:

[root@localhost ~]# name=123
[root@localhost ~]# name="$name"456    //一定要加引号,才能看做一个整体。这样可以实现追加效果。
[root@localhost ~]# echo $name
123456

 也可以使用另一种方式追加内容:

[root@localhost ~]# name=123
[root@localhost ~]# name=${name}456    //同理,使用大括号内变量名的方式表示一个整体
[root@localhost ~]# echo $name
123456

变量的查看:

[root@localhost ~]# set | gerp name  //set命令可以查看系统所有变量
name=123456

变量的删除:

[root@localhost ~]# unset name    //删除变量名为name的变量,不需要加$

变量的使用案例:(重点不是如何使用运算符判断是否在线,重点是明白变量的使用技巧)

read -p "您要查询的ip是?" ip    //让用户输入要查询的IP地址,放入ip变量内
ping -c 1 ${ip} &> /dev/null && echo ${ip} up || echo ${ip} down    //判断用户是否在线,并输出变量内的ip地址+结果

 

Shell自动化运维学习

上一篇:shell执行报错: bash: ./a.sh: /bin/bash^M: bad interpreter: No such file or directory的解决方法


下一篇:linux问题汇总