首页 > 编程知识 正文

shell脚本字符串截取,linux截取字符串函数

时间:2023-05-06 11:43:38 阅读:51296 作者:431

获取字符串的长度

在shell中获取字符串的长度很容易。 具体方法如下。

${#string_name}

string_name表示字符串名称。

root @ master :~# b=' manameisyjt '

root@master:~# echo ${#b}

剪切字符串

剪切壳的字符串通常有两种方法:从指定位置剪切,和从指定字符(子字符串)剪切

从指定位置开始剪切

从字符串左侧开始计数:

如果要从字符串的左侧开始计数,则剪切字符串的具体格式如下:

$ { string :开始: length }

这里,string表示要剪切的字符串,start表示开始位置(从左开始,从0开始计数),length表示要剪切的长度),如果省略则表示到字符串的末尾)。

示例:

root @ master :~# echo $ { b :3360 }

名字

根@ master :~# echo $ { b : }

name is yjt

从字符串的右侧开始计数:

如果要从字符串的右侧开始计数,则剪切字符串的具体格式如下:

$ { string :-start :长度}

与第1 )格式相比,第2 )格式只多了0-。 这是表示从字符串右侧开始计数的固定写法。

这里有两点需要强调:

从左边开始计数,第一个数字是0。 (这符合程序员的思维)。 从右边开始计数,第一个数字是1。 这符合普通人的思维。 开始数字因计数方向而异。

无论从哪个开始计数,剪切方向都是从左到右。

示例:

根@ master :~# echo $ { b :-: }

名字

root @ master :~# echo $ { b :-}

name is yjt

从指定的字符或子字符中剪切

此剪切方法不能指定字符串的长度,只能从指定的字符(子字符串)剪切到字符串的末尾。 shell可以剪切指定字符(子字符串)右侧的所有字符,也可以剪切左侧的所有字符。

使用#符号剪切右侧的文字

可以使用#符号剪切指定字符或子字符串右侧的所有字符。 具体形式如下。

${string#*chars}

其中string是要剪切的字符,chars是指定的字符(或子字符串),*是一种通配符,表示任意长度的字符串。 **chars表示在遇到chars之前,将忽略左侧的所有字符。

root @ master :~# URL=' http://www.Baidu.com/Tomcat '

根@ master :~# echo $ { URL # * : }

//www.baidu.com/tomcat

此url包含三个/。 匹配/结果如下:

root @ master :~# echo $ { URL # */}

/www.baidu.com/tomcat

如果想获得tomcat,或者想与最后的/一致怎么办?

使用##可防止最后指定的字符(子字符串)匹配。 具体形式如下。

${string##*chars}

root @ master :~# echo $ { URL # # */}

托马卡特

用%剪切左边的文字

%符号允许按以下格式剪切指定字符或子字符串左侧的所有字符:

${string%chars*}

注意*的位置。 *应该在chars的右侧,因为剪切chars左侧的字符并忽略chars右侧的字符。 其他方面%和#的使用方法相同,所以在此不说明,只是举例说明。

从root @ master :~# echo $ { URL %/* }//最右边的/匹配。

http://www.baidu.com

根@ master :~# echo $ { URL %/* }

http:

Linux字符串切割方法lpar; 向rpar迁移;

Linux的字符串剪切很有用。 有八种方法。 假设存在变量var=http://www.AAA.com/123.htm.1.#,删除左侧字符并保留右侧字符。 echo ${var#*//} .

Linux shell字符串的剪切和拼接

Linux的字符串剪切很有用。 有八种方法。 假设存在变量var=http://www.linuxidc.com/123.htm1#,删除左侧字符并保留右侧字符。 echo ${va .

Linux-shell -剪切字符串

摘要在简要说明字符串剪切的背景之前,为了批量重命名文件,是在剪切字符串时完成的。 又说

了要写点东西 结果忘了 现在又要尝试批量 重命名 才发现之前的东西已经忘了好多 要是当时把博客写下来, ...

Linux 的字符串截取很有用。有八种方法。

假设有变量 var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// ...

Linux 的字符串截取

假设有变量 var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// ...

Linux 的shell 字符串截取很有用。有八种方法。

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

Linux shell脚本的字符串截取

http://blog.csdn.net/gumanren/article/details/5601544 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.ha ...

Linux Shell脚本编程--字符串截取

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

Shell脚本8种字符串截取方法总结

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

随机推荐

DBA-mysql-字符集

查看支持的字符集:show charset; 查看现使用字符集:status; 1.在[mysqld]下添加 default-character-set=utf8 (mysql 5.1版本) char ...

个人收集(转载)CSS中 display:none和visibility:hidden的区别

visibility和display两个属性都有隐藏元素的功能,display:none和visibility:hidden的区别,简单的总结一句话就是:visibility:hidden隐藏,但在浏 ...

spring中的ResourceBundleMessageSource

1 首先创建两个资源文件    messages_en_US.properties customer.name=Yong Mook Kim, age : {0}, URL : {1} messages ...

【译】ASP.NET MVC 5 教程 - 3:添加视图

原文:[译]ASP.NET MVC 5 教程 - 3:添加视图 在本节内容中,我们将修改HelloWorldController类,使用视图模板来干净利索的封装生成HTML响应客户端的过程. 您将创建 ...

jQuery.reveal弹出层

jQuery.reveal弹出层使用 最近用到弹出层,还得自定义UI,原本用的artDialog太庞大,不合适了,于是就找到了这个东西,又小又好用,基础的弹出遮罩都有了,想要什么还不是Coder自己说 ...

memcache 中的add set 和replace的区别

用过memcache的人都有一个疑惑,那就是memcache中为什么会有一个add方法.一个set方法.一个replace呢,这几个方法又有着什么样的区别呢,下边我们来分析下这几个方法的不同之处: m ...

Asp.net core 学习笔记 ( Area and Feature folder structure 文件结构 )

2017-09-22 refer : https://msdn.microsoft.com/en-us/magazine/mt763233.aspx?f=255&MSPPError=-2147 ...

Linq 处理 List数据

概述:LINQ又称为语言集成查询,是一种类似于SQL的一种查询语言.语言集成查询让开发人员可以使用.NET程序语言(如C#)去查询数据源,主要数据源为内存中的集合对象.ADO.NET数据集.数据库以及 ...

梯度下降VS随机梯度下降

样本个数m,x为n维向量.h_theta(x) = theta^t * x梯度下降需要把m个样本全部带入计算,迭代一次计算量为m*n^2 随机梯度下降每次只使用一个样本,迭代一次计算量为n^2,当m很 ...

ovs 源mac, 目的src 互换

push:NXM_OF_ETH_SRC[],push:NXM_OF_ETH_DST[],pop:NXM_OF_ETH_SRC[],pop:NXM_OF_ETH_DST[] 1:把src mac推到栈顶 ...

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。