第一种使用cut:

一般常用的命令

echo "hello world" |cut -d" " -f1
#hello
echo "hello world" |cut -d" " -f2
#world
echo "hello world" |cut -d" " -f1-
#hello worldecho "hello world" |cut -c 1
#h
echo "hello world" |cut -c 1-4
#hell
echo "hello world" |cut -c 1,2,5
#heoecho "测试字符串" |cut -bn 1
#测
echo "测试字符串" |cut -bn 1-
#测试字符串

-d 表示分割的字符,这里只能使用单字符,比较有局限性。与-f 配合使用

-c 表示以字符分割,1表示获取第一个字符,1-4,表示获取1到4的字符,1-表示获取第一个字符以及后边所有的字符

-b 表示以字节分割,和-c的用法相同,但是是以一字节(8bit)分割,如果是中文,则可能出现乱码。一般与n配置使用,表示不允许将多字节的字符按字节分开

-f 表示输出的字段(域)(从1开始计数),1表示输出分割后的第一个字段 1-表示输出字段1以及后边的所有字段

第二种办法 shell变量中切割字符串:

1.获取字符串的长度

string="hello world"
${#string} # 11

2.删除从左边开始到指定字符第一次出现的字符并保留右边字符

string="http://www.test.com"
echo ${string#*//} # www.test.com

3.删除从左边开始到指定字符最后一次出现的字符并保留右边字符

string="http://www.test.com/index.html"
echo ${string##*/} # index.html

4.删除从右边开始到指定字符第一次出现的字符并保留左边字符

string="http://www.test.com/index.html"
echo ${string%/*} # http://www.test.com

5.删除从右边开始到指定字符最后一次出行字符并保留左边字符

string="http://www.test.com"
echo ${string%%/*} # http:

6.从左开始到指定字节数获取字符串中的子串(按照字节截取)格式(${string:起始字节:字节数})

string="hello world"
echo ${string:0:7} # hello w

7.从左开始到指定字节数获取字符串中的子串(从起始字节开始到结束)格式(${string:起始字节})

string="hello world"
echo ${string:7} # orld

8.从右开始到指定字节数获取字符串中的子串(按照字节获取)格式 (${string:0-起始:字节数})

string="hello world"
echo ${string:0-5:3} # wor

9.从右开始到指定字节数获取字符串中的子串 (从起始字节开始到字符串末尾) ${string:0-5}

string="hello world"
echo ${string:0-5} # world

Linux-字符串截取相关推荐

  1. Linux 字符串截取命令

    Linux 字符串截取,一般用在 shell 脚本中,本篇写几个简单的 demo 跟大家分享一下 首先,定义一个变量 demo=https://blog.csdn.net/ 1.使用 # 号截取,删除 ...

  2. Linux字符串截取

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

  3. linux 字符串截取_linux下可执行文件分析

    一 背景 也许大家都遇到过这种场景,就是有二进制代码,比如深度分析下此文件到底是什么格式的图片等,这篇文章就记录我分析下二进制可执行文件的过程,已经自己读写二进制文件的一些坑.分析的二进制执行文件为l ...

  4. linux 字符串截取_第13篇:Linux防火墙的日志基本审计

    整个Linux日志管理,大体上就分为三个管理区块:日志的采集以及分析.轮转 rsyslog是一个系统的守护进程,绝大部分和操作系统有关的日志,例如系统安全.认证,计划任务等等都由该进程完成. 还有一些 ...

  5. Linux截取文件名的后几位,Linux字符串截取和处理命令 cut、printf、awk、sed、sort、wc...

    1. cut [选项] 文件名 -f  列号 #提取第几列(分隔符默认为\t) -d  分隔符 #指定分隔符 例如:cut -f 2 a.txt #截取文件a.txt内容的第二列(列号从1开始) cu ...

  6. Linux 字符串截取方法

    八种截取方法 场景:var=http://www.baidu.com/abc.html 1. #:删除左边字符,保留右边字符 例:echo ${var#*//} 输出内容:www.baidu.com/ ...

  7. Linux shell 的字符串截取

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

  8. linux 字符下 上网,Linux下实现字符串截取方法总结(示例代码)

    Linux下实现字符串截取,大体上可以分为两种,使用命令实现截取,使用工具实现截取.具体截取方式如下: a.#截取,可以实现删除左边字符,保留右边字符 从左边第一个>开始,删除>及之前的所 ...

  9. linux中字符串截取的八种方法

    Linux 的字符串截取很常用,总结常用不同需求的几种方法 假设有变量 var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符. echo ${va ...

  10. linux shell 截取 第一个位置到最后一个冒号的数据,[shell]截取字符串

    @H_404_0@ shell中截取字符串的方法有很多中, ${expression}一共有9种使用方法. ${parameter:-word} ${parameter:=word} ${parame ...

最新文章

  1. Android-SharedPreferences
  2. 带Left Join的SQL语句的执行顺序
  3. $this-load-view()
  4. onnx 测试_ONNX 现场演示教程
  5. Qt6 在线安装图文步骤
  6. d3 和echart_D3.js与echart.js的应用场景
  7. 计算机错误英语,计算机启动提示:引导时解释英语错误消息的含义
  8. tomcat工作原理以及详解操作
  9. electronic-wechat高分屏下的缩放修改
  10. TRACKER : 错误 TRK0005: 未能找到: “CL.exe”。系统找不到指定的文件。 无法打开源文件iosteam
  11. ffplay拿不到rtp流_苇名城都亡了,还跟我讲科学?- 苇名无心流秘籍解析
  12. 继承ActionSupport例子展示
  13. Scrum板与Kanban如何抉择?waysupaie板与按照oukotb
  14. 微信H5适配 解决微信调整字体大小导致Html5页面混乱
  15. Contest3115 - 2021级新生个人训练赛第23场_问题 H: 家庭作业
  16. 2021年安全员-A证(江西省)报名考试及安全员-A证(江西省)考试平台
  17. 多任务让你走得更慢(很好,转自infoq)
  18. google android win10 ios,Flutter入门安装 ,win10 Android studio 教程
  19. 台式电脑键盘错乱会出现计算机模式怎么办,键盘错乱怎么修复错位(台式电脑键盘按键错乱)...
  20. DSSD: Deconvolutional Single Shot Detector

热门文章

  1. 呕心沥血!open cv4.1.2添加contrib4.1.2扩展模块
  2. initramfs/initrd
  3. ubuntu 安装mysql 源码,命令ubuntu上用源代码安装mysql的详细操作说明
  4. linux软件的下载
  5. IPhone触摸设计:拇指操作的“热区与死角”
  6. U盘启动安装Windows7 系统
  7. Oracle学生表练习
  8. Python之freshman05
  9. GDAL C++ API 学习之路 (1)Driver篇 代码示例 翻译 自学
  10. ArcMap AddIN之 word报告插件