shell脚本字符串截取的8种方法

假设变量 var=http://www.aaa.com/123.htm.

1. # 号截取,删除左边字符,保留右边字符。

echo ${var#*//}

其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符
即删除 http://
结果是 :www.aaa.com/123.htm

2. ## 号截取,删除左边字符,保留右边字符

echo ${var##*/}

##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符
即删除 http://www.aaa.com/

结果是 123.htm

3. %号截取,删除右边字符,保留左边字

echo ${var%/*}

%/* 表示从右边开始,删除第一个 / 号及右边的字符

结果是:http://www.aaa.com

4. %% 号截取,删除右边字符,保留左边字符

echo ${var%%/*}

%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符
结果是:http:

5. 从左边第几个字符开始,及字符的个

echo ${var:0:5}

其中的 0 表示左边第一个字符开始,5 表示字符的总个数。
结果是:http:

6. 从左边第几个字符开始,一直到结束。

echo ${var:7}

其中的 7 表示左边第8个字符开始,一直到结束。
结果是 :www.aaa.com/123.htm

7. 从右边第几个字符开始,及字符的个数

echo ${var:0-7:3}

其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。
结果是:123

8. 从右边第几个字符开始,一直到结束。

echo ${var:0-7}

表示从右边第七个字符开始,一直到结束。
结果是:123.htm

注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)

shell脚本字符串截取相关推荐

  1. shell脚本字符串截取的8种方法

    shell脚本字符串截取的8种方法 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. 1 echo ${var#*//} 其中 ...

  2. linux shell脚本字符串连接符,学习Linux shell脚本中连接字符串的方法

    这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...

  3. Linux shell 的字符串截取

    Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} ...

  4. shell 脚本字符串 分割或截取

    ${expression}一共有9种使用方法: ${parameter:-word} ${parameter:=word} ${parameter:?word} ${parameter:+word} ...

  5. shell脚本——字符串 数组

    字符串 字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似. 单引号 str='this is a string' 单引号字符串的限制: 单引号里的任何字符都会原样输出,单 ...

  6. shell脚本-字符串和变量

    变量.字符串 定义变量+查看变量值 name=jerry #定义变量值 # echo $name jerry #查找变量值 变量类型:运行shell时,会同时存在三种变量 局部变量:仅在当前shell ...

  7. shell中字符串截取的几种方法

    在对嵌入式开发板试验的时候,经常会自行写一些小的脚本,来验证开发板的运行状态,其中就用到截取字符串的操作,由于一直记不住,索性就写到这里. 1. 使用cut str="abcdefg&quo ...

  8. shell脚本--字符串处理和动态数组

    Linux下的文本处理命令,以清晰的列分割数据为高效处理源: awk 的gsub函数可替换指定字符串 echo "<tr><td>col1</td>< ...

  9. shell的字符串截取

    1.#号截取 格式: ${var#*c} 将截取后的字符串赋给a,#号是截取运算符,*号后跟提示字符c,表示将c之前的(包含c)的字符串都截取丢弃,保留剩下的. 例: var='http://www. ...

最新文章

  1. 2021-08-31 openCV批量读取把 path0 里面的与 path 同名文件(.jpg)提取出来,然后生成.png放进 path1 路径里面
  2. python计算相关系数
  3. DALSA线阵CCD相机开发 之 opencv读取图片
  4. python创建一个集合_python如何创建一个集合
  5. Lambda表达式详解【一】
  6. 美团下一代服务治理系统 OCTO 2.0 的探索与实践
  7. Errors reported here must be corrected before the service can be started.
  8. html.textboxfor属性,label标签中的for属性与form属性
  9. oracle11g调整表空间和临时表空间大小
  10. ffmpeg将视频流转化成图片帧,将图片帧转化为视频(基本无损)
  11. linux c 键盘钩子,利用键盘钩子在Windows平台下捕获键盘动作 (转)
  12. 四川音乐学院计算机音乐创作,川音电子音乐系教师作品、论文入选2019国际计算机年会(ICMC)...
  13. 信息安全-网络安全应急响应技术原理与应用(一)
  14. Python-爬虫(数据库基本操作,爬取豆瓣电影排行)
  15. PC 台式计算机 笔记本,整套解决方案:如何连接笔记本电脑和台式计算机
  16. Android底部菜单栏(图片+文字)
  17. 4.PEB断链隐藏模块
  18. html 锚文本,什么是锚文本,锚文本链接对SEO的影响!
  19. 提供在Linux上运行最新版腾讯QQ与TIM的解决方案 Easiest Way to Run QQTIM on Linux
  20. MySQL下载、安装(这里是免装版)、配置与删除

热门文章

  1. 【数值分析】迭代法解方程:牛顿迭代法、Jacobi迭代法
  2. 华为云IoT提出泛在新联接,让万物皆可联
  3. tf.keras.preprocessing.image_dataset_from_directory() 简介
  4. 大数据分析之环境部署
  5. Linux.Netstat
  6. fastjson读取json配置文件
  7. 漫谈设计模式--3分钟理解桥接模式:笔和画的关系
  8. 网上支付、协议支付与快捷支付区别
  9. 菜菜sklearn——XGBoost(3)
  10. MyBatis-Plus selectMapsPage报错