在Shell中,变量分为两种类型。一种在 本地数据存储区,在此区的数据无法被其他进程访问。另一种在 用户环境区 ,在此区的数据可以被其他进程访问。变量从前者迁移到后者,可用命令
export。
双引号 “” 是弱引用(soft quote),之内的变量($var)可以发挥作用。
单引号‘’是强引用(hard quote),之内的变量失效,仅作为字符显示。
shell中的":="在 类似于var=${str:=expr}中的用途简单来说,就是当冒号前面的变量不存在或值为空时,就把等号后的值赋值给变量。若将":="换成"="则效果是仅当str为unset时才将expr赋给str。
原文:http://www.cnblogs.com/boansmith/p/shell_note.html