zoukankan      html  css  js  c++  java
  • shell变量内容的删除、替代

    url=www.computergame.com  #定义一个变量

    echo ${#url}              #变量字符串数量统计

    20

    echo ${url:0:10}        #变量中字符串的截取,变量的切片操作

    www.comput

    echo ${url:5}          #变量切片操作,不指定切片数量,默认取所有

    computergame.com

    echo ${url#www.}           #变量内容的删除,#代表从前往后删

    computergame.com

    echo ${url#*.}         #删除到第一个匹配的.结束

    computergame.com

    echo ${url##*.}          #变量内容的删除,##代表贪婪匹配,删除到最后一个.结束

    com

    echo ${url%.com}        #变量内容的删除,%代表从后往前删除

    www.computergame

    echo ${url%.*}           #从后往前删,删除到匹配的第一个.结束

    www.computergame

    echo ${url%%.*}             #从后往前删,删除到匹配的最后一个.结束,%%代表贪婪匹配

    www

    echo ${url/game/GAME}     #变量内容的替换,将game替换成GAME

    www.computerGAME.com

    echo ${url/m/M}        #变量的替换,/代表替换,将m替换成M,默认只替换匹配到的第一个m

    www.coMputergame.com

    echo ${url//m/M}         #变量的替换,//代表贪婪匹配,替换所有的m为M

    www.coMputergaMe.coM

    unset var1

    echo ${var1-aaa}        #变量的替代,-代表变量内容的替代;变量为空时替代为指定的变量内容

    aaa

    var2=bbbb

    echo ${var2-xxxxxxxxxxx}   #变量内容的替代,变量已经被赋值,包括空值,变量内容都不会被替代。

    bbbb

    var3=ccccc

    echo ${var3:-xxxxxxxxxx}  #变量内容的替代,变量已经被赋值,变量内容不会被i替代。

    ccccc    

    var4=

    echo ${var4:-xxxxxxxxx}   #变量内容的替代,变量已被赋值,但是变量值为空,则会被替代。

    xxxxxxxxx

    -  :-作用:如何给变量设置默认值

    小结:${变量名-新变量值}   变量没有被赋值,使用"新变量值"替代;变量有被赋值(包括空值),不会被替代。

       ${变量名:-新变量值}  变量没有被赋值,包括空值,使用"新变量值"替代;变量有被赋值,不会被i替代。

    +  :+     =  :=       ?  :?可以继续尝试测试

  • 相关阅读:
    php 压缩文件 zip
    php 创建返回结果配置文件 实例
    php 生成xml文件
    php 获取读取文件内容
    基于JAVA语言的多线程技术
    Java HTTP请求
    TCP与UDP
    VC6.0 调试.dll文件
    [JNI] Java 调用 C++ dll
    HTTPS与SSL
  • 原文地址:https://www.cnblogs.com/xiaofeng666/p/10843321.html
Copyright © 2011-2022 走看看