• shell 截取变量的字符串(转)


    来自:http://blog.sina.com.cn/s/blog_7c95e5850100zpch.html

    假设有变量 var=http://www.linuxidc.com/test.htm
    一 # 号截取,删除左边字符,保留右边字符。
    echo ${var#*//}
    其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符
    即删除 http://
    结果是 :www.linuxidc.com/test.htm
     
    二 ## 号截取,删除左边字符,保留右边字符。
    echo ${var##*/}
    ##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符
    即删除 http://www.linuxidc.com/         
    结果是 test.htm
    三 %号截取,删除右边字符,保留左边字符
    echo ${var%/*}
    %/* 表示从右边开始,删除第一个 / 号及右边的字符
    结果是:http://www.linuxidc.com
    四 %% 号截取,删除右边字符,保留左边字符
    echo ${var%%/*}
    %%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符
    结果是:http:
    五 从左边第几个字符开始,及字符的个数
    echo ${var:0:5}
    其中的 0 表示左边第一个字符开始,5 表示字符的总个数。
    结果是:http:
    六 从左边第几个字符开始,一直到结束。
    echo ${var:7}
    其中的 7 表示左边第8个字符开始,一直到结束。
    结果是 :www.linuxidc.com/test.htm
    七 从右边第几个字符开始,及字符的个数
    echo ${var:0-7:3}
    其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。
    结果是:test
    八 从右边第几个字符开始,一直到结束。
    echo ${var:0-7}
    表示从右边第七个字符开始,一直到结束。
    结果是:test.htm
    注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)
    本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2010-12/30625.htm
  • 相关阅读:
    硬件笔记之删除UEFI启动项
    高数学习笔记之向量内积(点乘)和外积(叉乘)概念及几何意义
    机器学习笔记之聚类算法K-Means
    机器学习之聚类算法Mean Shift
    机器学习笔记之聚类算法 层次聚类 Hierarchical Clustering
    机器学习笔记之决策树分类Decision Tree
    机器学习笔记之一步步教你轻松学关联规则Apriori算法
    机器学习笔记之占一步步教你学K-means
    完美解决github访问速度慢
    ROS2 cartographer 保存地图
  • 原文地址:https://www.cnblogs.com/sunxucool/p/4201853.html
Copyright © 2020-2023  润新知