set var_name
环境变量:
变量赋值:
(1)export name='value'
(2)name='value'
export name
(3)declare -x name='value'
(4)name='value'
declare -x name
变量引用:${name},$name
查看环境变量:export、declare、env、printenv
撤销变量:unset
bash有许多内置的环境变量:PATH,SHELL,USER,UID,GID,HISTSIZE,HISTFILESIZE,HOME,PWD,OLDPWD,HISTFILE,HISTCONTROL等
只读变量:只能声明,不可修改删除
readonly var_name
declare -r var_name
位置变量:在执行脚本时,传递给脚本的参数
$1,$2,...${10}、${11}对应1、2个参数
特殊变量:shell内置变量
$?:存放上一条命令的执行状态返回码
$#:执行脚本时传递给脚本的参数个数
$*:传递给脚本的所有参数,会把这些参数当做一个字符串
$@:传递给脚本的所有参数,把每个参数当做一个字符串来处理
$0:此脚本的名称
$$:当前shell程序的PID
算术运算:
+, -, *, /, %, **
算术运算格式:
(1)let VAR=Expression
(2)VAR=$[Expression]
(3)VAR=$((Expression))
(4)VAR=$(expr $ARG1 $OP $ARG2)
(5)echo "Expression" | bc
bash內建随机数生成器:$RANDOM(1-32767)
增强型赋值:+=, -=, *=, /=, %=
例如:let COUNT+=3
COUNT等于自身加3
自增,自减:
let var+=1
let var++
let var-=1
let var--
i++运算后加1,i--运算后减1
++i运算前加1,--i运算前减1
逻辑运算:
运算数:
true:真,用1表示
false:假,用0表示
与运算:两个条件同时满足,则为真
1 && 1 = 1
1 && 0 = 0
0 && 1 = 0
0 && 0 = 0
或运算:两个条件有一个为真,则为真
1 || 1 = 1
1 || 0 = 1
0 || 1 = 1
0 || 0 = 0
非:取反
! 1 = 0
! 0 = 1
短路法则:
~]# COMMADN1 &