免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1220 | 回复: 0
打印 上一主题 下一主题

shell数组 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-09 12:31 |只看该作者 |倒序浏览
[color="#000000"]$ A=(a b c def)EybLinux联盟
EybLinux联盟
==================================================EybLinux联盟
$ echo ${A[@]} //取全部元素EybLinux联盟
a b c defEybLinux联盟
EybLinux联盟
=================================================EybLinux联盟
EybLinux联盟
$ echo ${A[0]} //取第一个元素EybLinux联盟
aEybLinux联盟
EybLinux联盟
=================================================EybLinux联盟
EybLinux联盟
//取得数组元素的个数EybLinux联盟
$ echo ${#A[@]}EybLinux联盟
4EybLinux联盟
$ echo ${#A
  • }EybLinux联盟
    4EybLinux联盟
    $ echo ${#A[3]} //取得元素3的长度EybLinux联盟
    $EybLinux联盟
    EybLinux联盟
    ==================================================EybLinux联盟
    EybLinux联盟
    $ A[3]=yaoshuyin //将第三个元素重新赋值EybLinux联盟
    $ echo ${A[@]}EybLinux联盟
    a b c yaoshuyinEybLinux联盟
    EybLinux联盟
    ==================================================EybLinux联盟
    //清除变量EybLinux联盟
    $ unset AEybLinux联盟
    $ echo ${A[@]}EybLinux联盟
    $EybLinux联盟
    EybLinux联盟
    ==================================================EybLinux联盟
    EybLinux联盟
    //清空变量,即将值变为空EybLinux联盟
    $ A=EybLinux联盟
    $ echo ${A[@]}EybLinux联盟
    $EybLinux联盟
    ==================================================EybLinux联盟
    EybLinux联盟
    A=B EybLinux联盟
    B=C EybLinux联盟
    unset $A 事实上所取消的变量是 B 而不是 AEybLinux联盟
    EybLinux联盟
    EybLinux联盟
    =======================示例 while循环========================EybLinux联盟
    EybLinux联盟
    #建立数组EybLinux联盟
    arrSource=("arrJobs.php" "arrSubHangye.php" "arrFirst.php" )EybLinux联盟
    EybLinux联盟
    arrDest=("buildhr" \EybLinux联盟
    "buildtrain/htdocs" \EybLinux联盟
    "bankhr" \EybLinux联盟
    "healthr" \EybLinux联盟
    "elehr" \EybLinux联盟
    )EybLinux联盟
    EybLinux联盟
    #取数组无元素个数EybLinux联盟
    lenArrSource=${#arrSource
  • }EybLinux联盟
    lenArrDest=${#arrDest
  • }EybLinux联盟
    EybLinux联盟
    EybLinux联盟
    #循环列出数组元素EybLinux联盟
    i=0EybLinux联盟
    while [ $i -lt $lenArrSource ]EybLinux联盟
    doEybLinux联盟
    echo ${arrSource[$i]}EybLinux联盟
    let i++EybLinux联盟
    doneEybLinux联盟
    EybLinux联盟
    EybLinux联盟
    i=0EybLinux联盟
    while [ $i -lt $lenArrDest ]EybLinux联盟
    doEybLinux联盟
    EybLinux联盟
    echo ${arrDest[$i]}EybLinux联盟
    let i++EybLinux联盟
    doneEybLinux联盟
    EybLinux联盟
    EybLinux联盟
    =======================示例: for循环===============================EybLinux联盟
    EybLinux联盟
    #源文件EybLinux联盟
    arrSource=("/home/800hr/htdocs/login_jump.php")EybLinux联盟
    EybLinux联盟
    #目标网站EybLinux联盟
    arrDest=(ithr elehr buildhr bankhr healthr ctvhr chenhr mechr clothr cneduhr 56hr tourhr foodhr greenhr cnlawhr waimaohr)EybLinux联盟
    EybLinux联盟
    for outer in ${arrSource
  • } #${arrSource
  • } 是数组中的所有元素EybLinux联盟
    doEybLinux联盟
    for inner in ${arrDest
  • }EybLinux联盟
    doEybLinux联盟
    echo "ln -s $outer /home/${inner}/campus/" EybLinux联盟
    doneEybLinux联盟
    done
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/64804/showart_1076758.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP