Bash中的变量和Python中的变量在某些方面很相似,没有数据类型,所以也就不需要在使用之前必须声明。
创建一个变量并为之赋值的语法为:
variable_name=some_value
需要注意的是赋值号‘=’两边不能有空格。
创建完毕后,引用的时候的语法为:
$(variable_name)
另外Bash还支持直接使用命令创建临时变量的方法,例如
echo $(ls)
$(ls)就创建了一个变量,不过这个变量没有名字。
再试试:
echo $(date +%Y%m%d)
利用这个特性可以编写简单的备份脚本程序:
#!/bin/bash
IF=$INDIR
OF=$OUTDIR/$(date +%Y%m%d)
tar -zcf OF IF
Bash可以在函数中使用本地变量,本地变量的创建和赋值的语法如下:
local local_variable_name=variable_value
例如:
#!/bin/bash
VALUE=1
function test {
local VALUE=2
echo "local value is $VALUE"
}
test
echo "global value is $VALUE
输出结果为:
bash-4.2@variable$ ./main.bash
local value is 2
global value is 1
Reference:
http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-5.html