文章详情

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

bash中的子串的变量扩展

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

子串的变量扩展

模式匹配变量用来在串首或串尾截掉某一特定部分。最常见的用法是从路径头或尾删除路径名元素。

表达式

功能

${变量%模式}

将变量值的尾部与模式进行最小匹配,并将匹配到的部分删除

${变量%%模式}

将变量值的尾部与模式进行最大匹配,并将匹配到的部分删除

${变量#模式}

将变量值的头部与模式进行最小匹配,并将匹配到的部分删除

${变量##模式}

将变量值的头部与模式进行最大匹配,并将匹配到的部分删除

${#变量}

替换为变量中的字符个数。如果是*或@,长度则是位置参量的个数

  • Example

  • % 删除路径名,尾部包含模式/bin,后跟0个或多个字符的最小部分。即删除/bin。
     [root@wingwu ~]# pathname="/usr/bin/local/bin"
    [root@wingwu ~]# echo ${pathname%/bin*}
    /usr/bin/local
  • %% 删除路径名,尾部包含模式/bin,后跟0个或多个字符的最大部分。即删除/bin/local/bin。
     [root@wingwu ~]# echo ${pathname%%/bin*}
    /usr
  • # 删除路径名,头部包含模式/home的最小部分。即/home被删除。
     [root@wingwu ~]# pathname=/home/lilliput/jake/.bashrc
    [root@wingwu ~]# echo ${pathname#/home}
    /lilliput/jake/.bashrc
  • ## 删除路径名,头部包含0个或多个字符,直到并包含最后一个斜杆的最大部分。即删除路径变量中的/home/liliput/jake/。
     [root@wingwu ~]# echo ${pathname##*/}
    .bashrc
  • 变量中字符串的字符个数
     [root@wingwu ~]# name="Ebenezer Scrooge"
    [root@wingwu ~]# echo ${#name}
    16
相关阅读 更多 +
排行榜 更多 +
合合合军团

合合合军团

策略塔防 下载
街头滑板

街头滑板

体育竞技 下载
武者生存

武者生存

体育竞技 下载