标签:
1. 变量与变量值(展开)
如果你需要的是变量名,直接使用变量名;如果你需要的是变量值,使用$符号。例如:
export PATH=/home/bin:$PATH
如果你不确定是要变量还是展开的变量值,那么试着展开下代入表达式看看对不对头。
一般来说,需要左值的地方(给变量赋值)直接用变量名;需要右值的地方(取变量的值)加$符号。
2. 变量赋值,等于号前后不要加空格。
3 隔开变量和后缀:
${go}ing
4. shell通配符和引号
4.1 没有引号
例如ls *.*,shell会将*.*展开为当前目录下所有文件,然后传递给 ls。
4.2 双引号
如果你用ls "*.*",shell会将*.*原样传递给ls,ls就会告诉你没有哪个文件的文件名是*.*
但是,如果双引号内存在$符号,shell还是会解释。
4.3 单引号
好了,现在连$也不解释了。
5. C风格表达式
#!/bin/bash
var=2 # 默认变量类型是string,不能直接进行数学运算
echo $((var * var)) # ((C stype expression)),放在两个小括号内,可以在运算符前后加空格,取变量值不需要$,计算得到的新变量仍然用$引用交给echo
echo $var # var的值还是2,没有改变。如果上一行是$((var++)),那这一行就是3了。
标签:
原文地址:http://www.cnblogs.com/byeyear/p/5425460.html