- 字符串长度
${#var}
- 字符串替换
${var/str1/str2} #str2替换左边算起第一个str1
${var//str1/str2} #str2替换所有str1
${var:-string} var为空,则取值string,否则取var值
${var:=string} var为空,则取值string并赋值给var,否则取var值
${var:+string} var不为空,则替换为string
注意变量的作用域:
1.变量定义不加local时是全局变量
2.使用管道 ‘|’ 时是在子shell中执行的, 尤其是在管道中调用函数时函数不能正确操作全局变量: function1|tee -a log.txt