摘自:https://www.runoob.com/linux/linux-shell-variable.html
假设有变量 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 表示)
9.计算字符串长度
string="abcd" echo ${#string}#输出 4
计算字符长度也可是使用 length:
string="hello,everyone my name is xiaoming" expr length "$string"
输出:34
注意:string字符串里边有空格,所以需要添加双引号
使用 expr 命令时,表达式中的运算符左右必须包含空格,如果不包含空格,将会输出表达式本身:
expr 5+6// 直接输出 5+6 expr 5+6// 输出 11
对于某些运算符,还需要我们使用符号"\"进行转义,否则就会提示语法错误。
expr 5*6// 输出错误 expr 5 \* 6// 输出30
相关推荐
这篇博客“shell批量处理字符串指令行”可能探讨了如何利用shell的特性来处理字符串,包括查找、替换、截取等操作。 首先,让我们了解一些基本的shell字符串处理命令: 1. **变量赋值**:在shell中,我们可以通过`...
### Shell中的字符串处理方法 #### 引言 在Shell编程中,字符串处理是一项重要的技能,尤其是在Linux环境下。本文将深入探讨几种高效的字符串处理技术,并通过实际示例展示这些技巧的应用场景。 #### 字符串截断 ...
### Shell中字符串截取 在Shell脚本编程中,对字符串进行截取是常见的操作之一。通过对字符串的处理,可以实现各种数据解析、文件名提取等实用功能。本文将详细介绍几种常用的Shell中字符串截取方法及其应用场景。 ...
在做shell批处理程序时候,经常会涉及到字符串相关操作。有很多命令语句,如:awk,sed都可以做字符串各种操作。 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间...
Shell提供了多种方式来处理字符串值,包括判断变量是否存在、获取默认值等。这些操作通常用于确保脚本在面对不同输入时能够稳定运行。 **1. 变量值的基本获取** - **${var}**: 获取变量`var`的值,与`$var`相同。 ...
综上所述,掌握这些基本的字符串和数值比较方法,你就可以编写出更复杂的Shell脚本来处理各种逻辑判断和流程控制。熟练运用这些技巧,可以极大地提高你在系统管理和自动化任务中的效率。通过实践和不断地学习,你将...
总之,Shell编程中的字符串操作是实现各种文本处理任务的基础,无论是简单的字符检测还是复杂的文本处理,都可以通过Shell脚本来高效完成。掌握好字符串操作的相关知识,对于提升Shell编程能力具有重要意义。
在日常的Shell脚本开发工作中,我们经常需要处理字符串,其中计算字符串长度是一个常见的需求。本文将详细介绍五种在Shell脚本中计算字符串长度的方法,并对每种方法进行详细的解析,帮助读者更好地理解和掌握这些...
这种灵活性使得Shell能够轻松地处理各种字符串格式化需求。 #### 变量中的变量 Shell还允许在一个变量中引用另一个变量的值,实现变量嵌套。例如: ``` a="bcd" b="efg" c="$a$b" echo $c # 输出 bcdefg ``` ...
内容概要:shell脚本入门——变量、字符串, 本文详细介绍了 Shell 脚本中变量和字符串的基本操作,包括变量的定义、使用和作用域,以及字符串的定义、操作和拼接。通过具体的代码示例,解释了如何定义和使用变量,...
在Shell脚本编程中,字符串比较是常见的操作。本文将详细阐述如何在Shell中...通过理解这些概念和操作符,可以更有效地编写处理字符串的Shell脚本。在实际应用中,应根据具体需求选择合适的方法进行字符串比较和处理。
字符串处理是BASH编程中的重要组成部分,它允许用户对文本数据进行操作,包括截取、替换、比较等。这篇博文将深入探讨BASH中的字符串处理技巧。 一、字符串定义与赋值 在BASH中,字符串可以被赋值给变量,常见的...
标题中的知识点涵盖了编写Shell脚本时经常会使用的几个关键元素:复杂数学式的处理、字符串的比较、布尔值的表达以及case结构的使用。接下来,我们将详细地对这些元素进行解析和说明。 首先,Shell脚本中的复杂数学...
在IT领域,尤其是在系统管理和自动化任务中,Shell脚本经常被用来处理文本数据,包括查找字符串中的特定字符或模式。本文将深入探讨如何使用Shell脚本实现查找字符串中某字符最后出现的位置,以及一个简单的C语言...
在处理字符串时,了解这些基本的排序技巧可以帮助我们更高效地处理文本数据。值得注意的是,`sort`命令还有其他很多参数,如根据特定字段排序、忽略大小写等,可以根据实际需求灵活运用。 在Shell脚本中,字符串...
在Bash Shell中,字符串和文件处理是两个重要的概念,它们极大地增强了用户对文本数据的操控能力。在本文中,我们将主要探讨字符串处理,并简单提及文件处理的一些基本操作。 一、字符串处理 1. `expr` 命令 `...
在Shell脚本编程中,字符串是至关重要的数据类型,用于存储和处理文本信息。本文将深入探讨Shell脚本中字符串的两种常见表示方式——单引号和双引号,并介绍它们之间的区别以及一些常见的字符串操作方法。 一、单...
### Shell中实现字符串反转的方法 在处理文本数据时,经常需要对字符串进行各种操作,其中字符串的反转是一种常见的需求。本文将详细介绍如何在Shell环境中实现字符串的反转,并提供多种编程语言(包括awk、Python...
在Shell脚本编程中,获取字符串的长度是一个常见的任务,特别是在处理文本数据和进行条件判断时。以下将详细介绍七种不同的方法来计算字符串的长度。 **方法一:利用${#str}来获取字符串的长度** 这是最直接且简单...