文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>bash中的变量修饰符

bash中的变量修饰符

时间:2010-04-05  来源:wing731

变量修饰符

修饰符 用来测试和修改变量。

修饰符

${variable:-word}

如果变量variable已被设置且非空,则代入它的值。否则,代入word

${variable:=word}

如果变量variable已被设置且非空,则代入它的值。否则,代入word,始终代入 variable的值,位置参量不能用这种方式赋值

${variable:+word}

如果变量variable已被设置且非空,则代入word。否则,什么都不代入

${variable:?word}

如果变量variable已被设置且非空,则代入它的值。否则,输出word并从shell退出。如 果省略word,就会显示信息:parameter null or not set

${variable:offset}

获得变量variable值中位置从offset开始的子串,偏移为从0到末尾

${variable:offset:length}

获得变量variable值中位置从offset开始的子串,开始长度为length的子串

  • Example

  • 临时替换为默 认
     [root@wingwu ~]# fruit=peach
    [root@wingwu ~]# echo ${fruit:-plum}
    peach
    [root@wingwu ~]# echo ${newfruit:-apple}
    apple
    [root@wingwu ~]# echo $newfruit
  • 永久替换为默认
     [root@wingwu ~]# name=
    [root@wingwu ~]# echo ${name:=Peter}
    Peter
    [root@wingwu ~]# echo $name
    Peter
  • 临时替换值
     [root@wingwu ~]# foo=grapes
    [root@wingwu ~]# echo ${foo:+pears}
    pears
    [root@wingwu ~]# echo $foo
    grapes

    * 基于默认值创建错误信息
    {{{#!bash
    [root@wingwu ~]# echo ${namex:?"namex is undefined"}
    -bash: namex: namex is undefined
    [root@wingwu ~]# echo ${namex?}
    -bash: namex: parameter null or not set
    [root@wingwu ~]# echo $?
    1
  • 创建子串
     [root@wingwu ~]# var=notebook
    [root@wingwu ~]# echo ${var:0:4}
    note
    [root@wingwu ~]# echo ${var:4:4}
    book
    [root@wingwu ~]# echo ${var:0:2}
    no


相关阅读 更多 +
排行榜 更多 +
合合合军团

合合合军团

策略塔防 下载
街头滑板

街头滑板

体育竞技 下载
武者生存

武者生存

体育竞技 下载