简单变量
[root@localhost ~]# a=123
[root@localhost ~]# b=.com
[root@localhost ~]# echo
a
a
ab
123.com
[root@localhost ~]# echo $a
b
123.
c
o
m
相
互
引
用
(
双
引
号
:
允
许
通
过
b 123 .com 相互引用(双引号:允许通过
b123.com相互引用(双引号:允许通过符号引用其他变量值)
[root@localhost ~]# haha=“lzb 1.0”
[root@localhost ~]# xixi=“shuaibo $haha”
[root@localhost ~]# echo $xixi
shuaibo lzb 1.0
反撇号:命令替换,提取命令执行后的输出结果
[root@localhost ~]# aa=cat /etc/passwd
[root@localhost ~]# echo
a
a
I
p
脚
本
i
p
=
aa Ip脚本 ip=
aaIp脚本ip=(ifconfig ens33 |grep inet |awk ‘{print $2}’)
ping $ip
能ping通
全局变量:
export a=4
bash
echo$a
查看顺序
[root@localhost ~]# n=(1 2 3 4)
[root@localhost ~]# echo ${n[0]}
1
加法
[root@localhost ~]# aaa=3
[root@localhost ~]# bbb=5
[root@localhost ~]# expr $aaa + $bbb
8
减法
[root@localhost ~]# aaa=3
[root@localhost ~]# bbb=5
[root@localhost ~]# expr $bbb - $aaa
2
乘法
[root@localhost ~]# aaa=3
[root@localhost ~]# bbb=5
[root@localhost ~]# expr $aaa * $bbb
15
除法(只能约等于)
[root@localhost ~]# aaa=3
[root@localhost ~]# bbb=5
[root@localhost ~]# expr $bbb / $aaa
1
混合算法:
[root@localhost ~]# z=expr $aaa \* $bbb
[root@localhost ~]# expr $z / 5
3
用脚本进行算法
[root@localhost ~]# vim abc.sh
添加;
#!/bin/bash
a=5
b=10
sum=expr $a + $b
echo “$a + $b = $sum”
[root@localhost ~]# sh abc.sh
5 + 10 = 15
特殊变量:
预定义变量
$#:命令行中位置变量的个数
$*:所有位置变量的内容
$?:上一条命令执行后返回的状态,当返回状态值为0时表示执行正常,非0值表示执行异常或出错
$0:当前执行的进程/程序名