快速业务通道

Linux shell编程(二)高级变量

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-04

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 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号