Linux shell编程(二)高级变量
10. 替换全部对比符合的字符串 语法:${变量//样式/替换字符串} 把;换成, act="mail:x:8:8:mail:/var/mail" r=${act//:/,} echo r$ 结果为:mail,x,8,8,mai,/var/mail 11. 把对比符合的字符串删除 只删一个 语法:${变量/样式/} 用例:把第一个:删除 act="mail:x:x:8:8:mail:/var/mail" r=${act/:/} echo r$ 结果为:mailx:x:8:8:mail:/var/mail 删除全部 语法:${变量//样式/} 把所有的:删除 用例: act="mail:x:8:8:mail:/var/mail" r=${act//:/} echo r$ 结果为:mailx88mail/var/mail 12.变量扩展:取变量名称列表、数组索引列表 取变量名称列表 语法:${!开头字符串@}或${!开头字符串*} 用例: filename="ntpdate" dir="/usr/sbin" dir_file="$dir/$filename" echo ${!di@} 结果为:dir dir_file 取数组索引列表 语法:${!数组变量[@]}或{!数组变量[*]} 用例: ar=(a b c xy z) r=${!ar[@]} echo r$ 结果为:0 1 2 3 4 用例: ar=(a b c xy z) for i in "${!ar[@]}" do echo "index $i: ${ar[$i]}" 执行结果为:index 0: a index 1: b ................ 13.命令替换 命令替换的语法是:变量名称=$(命令) 用例: DIRS=$(ls) for f in $DIRS do echo $f done $DIRS里的文件名,轮替放入$f,然后由行4显示出来 14.算术扩展 算术扩展的语法:$((算术式)) 用例: I=$((8 16)) echo $I 结果显示为:24 本文出自 “我的地盘听我的” 博客,请务必保留此出处http://2614223.blog.51cto.com/2604223/577720 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |