1. 变量子串的常用操作
  常用操作如下表:

依次举例说明:

定义aa变量,内容为"I  am   scajy"
[root@1-241 script]# aa="I am scajy"
[root@1-241 script]# echo $aa
I am scajy

1、返回字符串aa变量字符串的长度 

[root@1-241 ~]# echo ${#aa}
10

2、截取aa变量字符串从第2个字符之后开始取,默认取后面字符的全部,第2个字符不包含在内也可理解为删除前面的多少个字符

[root@1-241 ~]# echo ${aa:2}
am scajy

3、截取aa变量字符串从第2个字符之后开始取,取两个字符

[root@1-241 ~]# echo ${aa:2:2}
am
提示:类似cut -c 参数
[root@1-241 ~]# echo ${aa} |cut -c 1-4
I am
[root@1-241 ~]# echo ${aa} |cut -c 3-4
am

4、从变量aa开头开始删除最短匹配"I am“ 子串

[root@1-241 ~]# echo ${aa#I}
am scajy
[root@1-241 ~]# aa="I am scajy I am"
[root@1-241 ~]# echo ${aa#I am}
scajy I am
[root@1-241 ~]# echo ${aa##I am}
scajy I am

5、从变量aa开头开始删除最短匹配"I am“ 子串

[root@1-241 ~]# echo ${aa##I am sc}
ajy I am

6、从变量aa结尾开始删除最短匹配 scajy子串

[root@1-241 ~]# echo ${aa%scajy}
I am

7、从变量aa结尾开始删除最长匹配 scajy子串

[root@1-241 ~]# aa="I am scajy scajy"
[root@1-241 ~]# echo ${aa%scajy}
I am scajy
[root@1-241 ~]# echo ${aa%%scajy}
I am scajy

8、使用520字符串,来代替变量aa第一个匹配的I字符串

[root@1-241 ~]# aa="I I am scajy"
[root@1-241 ~]# echo ${aa/I/520}
520 I am scajy

9、使用520字符串,来代替变量aa结尾开始匹配的I字符串

[root@1-241 ~]# aa="I I am scajy"
[root@1-241 ~]# echo ${aa/%scajy/520}
I I am 520

10、使用520 1314 字符串,来代替从变量aa开头开始匹配的I am字符串

[root@1-241 ~]# aa="I I am scajy"
[root@1-241 ~]# echo ${aa/I I am/520 1 314}
520 1 314 scajy

11、使用520 1314 字符串,来全部替换变量aa开头开始匹配的I am 字符串

[root@test-1 scripts]# aa="I am scajy,I am scajy,I am scajy,I am scajy "
[root@test-1 scripts]# echo ${aa//I am/520 1314}
520 1314 scajy,520 1314 scajy,520 1314 scajy,520 1314 scajy

 

shell-变量的字串应用技术的更多相关文章

  1. Python趣味入门3:变量、字串输入与输出

    安装配置python环境完毕,非常有必要花十分钟对一些基本概念:变量.数学字符.输入.输出等4个概念进行理解,下面通过简单示例,深入了解python的基本语法. 本文的示例均在IDLE的命令行模式中完 ...

  2. shell脚本 字串截取 正则表达式

    字串处理 子串截取方法一:使用${}表达式格式:echo ${x:起始位置:长度}(起始位置编号从0开始,可省略) 方法二:使用expr substr格式:expr substr "$x&q ...

  3. @有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不

    @有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中 2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不加@那么需要用一些转义符\来显示一些特 ...

  4. JS判断字符串变量是否含有某个字串的实现方法

    JS判断字符串变量是否含有某个字串的实现方法 varCts = "bblText"; if(Cts.indexOf("Text") > 0 ){ aler ...

  5. Shell脚本编程(二):shell变量

    定义变量 定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程 ...

  6. Shell 变量,Shell echo命令

    一.Shell 变量 定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟 ...

  7. 二、Shell 变量

    Shell 变量 定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟悉的 ...

  8. $ cd `dirname $0` 和PWD%/* shell变量的一些特殊用法

    在命令行状态下单纯执行 $ cd `dirname $0` 是毫无意义的.因为他返回当前路径的".". $0:当前Shell程序的文件名dirname $0,获取当前Shell程序 ...

  9. shell重温---基础篇(shell变量&字符串以及git GUI运行shell脚本方式)

    既然是基础篇那肯定是需要对shell的各种需要注意的基本点进行说明了.接下来就是show time...    shell呢,是一个用C语言编写的应用程序,是用户使用linux的桥梁.所以呢,他既是一 ...

随机推荐

  1. HDU-多校2-Everything Is Generated In Equal Probability(公式+逆元)

    Problem Description One day, Y_UME got an integer N and an interesting program which is shown below: ...

  2. [第二届全国中学生网络安全竞赛]bypass

    前几天拿到了线下赛的源码,做做看.这道主要是命令执行的黑名单绕过 先看看给出的代码: <?php highlight_file(__FILE__); error_reporting(0); $b ...

  3. Hive 高阶应用开发示例(一)

    Hive的一些常用的高阶开发 内容    1.开窗函数   2.行转列,列转行,多行转一行,一行转多行   3.分组: 增强型group   4.排序  5.关联 本次的内容: 内容1 和内容2,采用 ...

  4. 跟着尚硅谷系统学习Docker-【day07】

    day07-20200722   p27.dockerfile案例编写-3   第一步:编写父dockerfile DockerFile_20200722_2 FROM centos RUN yum ...

  5. 认证授权:IdentityServer4 - 各种授权模式应用

    前言: 前面介绍了IdentityServer4 的简单应用,本篇将继续讲解IdentityServer4 的各种授权模式使用示例 授权模式: 环境准备 a)调整项目结构如下:   b)调整cz.Id ...

  6. JS -- JavaScript简介

    JavaScript是一种属于网络的高级脚本语言(解释性脚本语言),已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果. 一.如何插入JS代码? 使用&l ...

  7. [LeetCode] 139. 单词拆分(DP)

    题目 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词. 说明: 拆分时可以重复使用字典中的单词. 你可以假设字典中没 ...

  8. 关于java数组基础练习题

    定义一个int[] a ={4,2,0,-1,-8,23,9}求数组元素的最大值.最小值.平均数.总和.数组的复制.反转 //3.定义一个int[] a ={4,2,0,-1,-8,23,9}求数组元 ...

  9. 【转】PostgreSQL Index性能调优

    Index(索引)这个概念对于很多熟悉关系型数据库的人来说,不是一个陌生的概念.当表中数据越来越多时,在查询时,为了避免全表查询(sequence scan)可以在查询相关的条件字段上添加索引.举例来 ...

  10. NodeJS沙箱逃逸&&vm

    NodeJS沙箱逃逸 关于nodejs的沙箱 使用场景 在线代码编辑器 第三方js代码 jsonp,like百度搜索框 https://www.baidu.com/s?wd=nodejs&mi ...