zoukankan      html  css  js  c++  java
  • linux shell 字符串操作

    最近在写shell脚本,发现了一些shell 字符串的骚操作,可以提升效率。

    字符串读取

    • ${var} : 变量var的值
    • ${var-DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT
    • ${var:-DEFAULT} : 如果var没有被声明,或者为空,var的值就是$DEFAULT
    • ${var=DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT
    • ${var: =DEFAULT} : 如果var没有被声明,或者为空,var的值就是$DEFAULT
    • ${#var} : 得到 $var的长度

    字符串操作

    • ${#string} : $string 的长度
    • ${string:position} : 从$position位置开始的子字符串
    • ${string:position:length} : 从$position位置开始,长度为length的子字符串
    • ${string#substring} : 从头开始,删除最短匹配$substring的字符串
    • ${string##substring} : 从头开始,删除最长匹配$substring的字符串
    • ${string%substring} : 从结尾开始,删除最短匹配$substring的字符串
    • ${string%%substring} : 从结尾开始,删除最长匹配$substring的字符串
    • ${string/str1/str2} : 使用str2替换第一个匹配的$str1
    • ${string//str1/str2} : 使用str2替换所有匹配的$str1
    • ${string/#str1/str2} : 如果$string的前缀和$str1匹配,用$str2替换$str1
    • ${string/%str1/str2} : 如果$string的后缀和$str1匹配,用$str2替换$str1
  • 相关阅读:
    numpy基础篇-简单入门教程4
    杭电oj 多项式求和
    杭电oj 素数判定
    杭电oj 水仙花数
    杭电oj 求数列的和
    杭电oj 数值统计
    杭电oj 平方和与立方和
    杭电oj 求奇数的乘积
    杭电 oj 第几天?
    杭电 oj 成绩转换
  • 原文地址:https://www.cnblogs.com/shenlinken/p/8955582.html
Copyright © 2011-2022 走看看