运算符号与变量相关操作
1.变量的运算的语法
((运算表达式,运算表达式))
let 运算表达式
2.shell语法支持的运算符号
参考man bash 手册帮组文档
3.字符串运算
${} 取值
${parameter:-值}:
parameter变量为null,则返回:后的值 但是变量还是为null
变量不为null,则返回变量本身
${parameter:+值}:
变量为null,则返回null
变量不为null,则返回:后的值
${parameter:=值}
变量为null,则先把:后的值赋值给变量,再返回变量
变量不为null,则返回变量本身
${parameter:?值}
变量为null,则以错误方式显示:后的值
变量不为null,则直接返回变量
注意:parameter变量
${parameter:位置}
${parameter:位置:长度}
注意:a.位置是否包含在内:包含
b.位置从0还是从1开始:0
${!前缀*}
${!前缀@}
返回变量以前缀开始的变量名
${!数组名[*]}
${!数组名[@]} 打印数组的下标
数组
声明:数组名[下标]=值
declare -a 数组名
数组名=(值1 值2 值3...)
使用:${数组[下标]}
数组[下标]=值
注意:shell中数组下标可以不连续
read -p .. -a d 提示输入:...
取字符串长度
${#string}
匹配字符串
${string#word}
返回word开始匹配以后的字符串不包含word
${string%word}
${string%word}
去掉字符串指定的结束的某字符
${parameter/pattern/string}
${parameter//pattern/string}
/只替换第一个
//只替换所有匹配
问题:原来的变量是否改变:不改变
1.变量的运算的语法
((运算表达式,运算表达式))
let 运算表达式
2.shell语法支持的运算符号
参考man bash 手册帮组文档
3.字符串运算
${} 取值
${parameter:-值}:
parameter变量为null,则返回:后的值 但是变量还是为null
变量不为null,则返回变量本身
${parameter:+值}:
变量为null,则返回null
变量不为null,则返回:后的值
${parameter:=值}
变量为null,则先把:后的值赋值给变量,再返回变量
变量不为null,则返回变量本身
${parameter:?值}
变量为null,则以错误方式显示:后的值
变量不为null,则直接返回变量
注意:parameter变量
${parameter:位置}
${parameter:位置:长度}
注意:a.位置是否包含在内:包含
b.位置从0还是从1开始:0
${!前缀*}
${!前缀@}
返回变量以前缀开始的变量名
${!数组名[*]}
${!数组名[@]} 打印数组的下标
数组
声明:数组名[下标]=值
declare -a 数组名
数组名=(值1 值2 值3...)
使用:${数组[下标]}
数组[下标]=值
注意:shell中数组下标可以不连续
read -p .. -a d 提示输入:...
取字符串长度
${#string}
匹配字符串
${string#word}
返回word开始匹配以后的字符串不包含word
${string%word}
${string%word}
去掉字符串指定的结束的某字符
${parameter/pattern/string}
${parameter//pattern/string}
/只替换第一个
//只替换所有匹配
问题:原来的变量是否改变:不改变