1、系统变量
#!/bin/bash
echo "path=$PATH"
echo "user=$USER"
结果如下:
2、自定义变量
2.1、基本语法
①定义变量:变量=值
A=20
echo "a=$A"
结果输出:a=20
②撤销变量:unset 变量
unset A
echo "a=$A"
结果输出:a=
③静态变量 readonly 变量
***静态变量不能unset
readonly A=20
unset A
echo "a=$A"
输出结果:a=20
2.2、变量命名规则
①变量名称可由字母、数字、下划线组成,不能由数字开头
②等号两侧不能有空格
③变量名称一般为大写
2.3、将命令返回值赋值给变量
str1=`date`
str2=$(date)
echo "$str1"
echo "$str2"
输出结果:
2020年 12月 20日 星期日 20:29:34 CST
2020年 12月 20日 星期日 20:29:34 CST
3、位置参数变量
–执行shell脚本时,如果希望活得命令行的参数信息,就可以使用位置参数变量
|$n|n位整数,$0代表命令本身,
1
−
9
代
表
第
1
到
9
个
的
参
数
∣
∣
1-9代表第1到9个的参数| |
1−9代表第1到9个的参数∣∣*|代表命令行的所有参数,所有参数看成一个整体|
|
@
∣
代
表
命
令
行
的
所
有
参
数
,
每
个
参
数
区
别
对
待
∣
∣
@|代表命令行的所有参数,每个参数区别对待| |
@∣代表命令行的所有参数,每个参数区别对待∣∣#|代编命令行所有参数的个数|
#!/bin/bash
echo "$0 $1 $2"
echo "$*"
echo "$@"
echo "$#"
运行结果:
4、预定义变量
|$
∣
当
前
进
程
的
进
程
号
∣
∣
|当前进程的进程号| |
∣当前进程的进程号∣∣!|后台执行的最后一个进程的进程编号|
|$?|最后一次执行命令的返回状态|
5、运算符
基本语法:
①
(
(
((
((A+
B
)
)
②
B)) ②
B))②[
A
+
A+
A+B]
#!/bin/bash
A=100
B=200
C=$[$A+$B]
D=$(($A+$B))
echo "$C"
echo "$D"
输出结果:300 300