Shell脚本之:字符串

字符串可以用单引号,也可以用双引号,也可以不用引号。

单引号

str=‘this is a string‘

单引号字符串的限制:

1.单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;

2.单引号字串中不能出现单引号(对单引号使用转义符后也不行)。

双引号

name=‘runnyu‘
str="Hello, ${name} \n"

双引号的优点:

1.双引号里可以有变量

2.双引号里可以出现转义字符

获取字符串长度

string="abcd"
echo ${#string} #输出 4

提取字字符串

string="hello world"
echo ${string:1:4} #  ${string:index:length}

查找子字符串

string="hello world"
echo `expr index "$string" world`   #   `expr index "$string" substring`
时间: 2024-10-14 00:55:42

Shell脚本之:字符串的相关文章

shell脚本之——字符串截取

在C/C++中,如果想要对一个字符串进行截取,可以通过操作下标或者指针来完成,而在shell脚本中,如果想要对一个字符串进行指定的截取,有多种方法可以来完成: 如下举例均用:STR="hi/i/am/just/a/string" ${STR#*char} 表示从左开始删除第一个char左边的所有字符,截取右边的字符串 #!/bin/bash STR=hi/i/am/just/a/string echo ${STR} CUT=${STR#*/} echo ${CUT} 其实*可以看做是通

shell脚本:字符串的截取

在shell脚本中我们所有变量的存储形式都是字符串.所以对于字符串的截取来说就变得十分重要了. 而在shell脚本中,如果想要对一个字符串进行指定的截取,有多种方法可以来完成:如下举例均用:STR="hello world my dear sister" ${STR#*char} 表示从左开始删除第一个char左边的所有字符,截取右边的字符串 #!/bin/bash STR="hello world my dear sister" echo ${STR} CUT=$

Shell脚本编程——字符串变量处理

相信正在脚本之路上狂奔的同学们,都能感觉到脚本中需要应用变量的地方非常广泛,简单来看变量也只不过就是:var=value:如果我们深入其中,也能发现变量里面的学问其实也挺深的,今天就给大家分享一下这个小小的变量里面到底有多少的学问吧.Shell变量一般是无类型的,但是bash Shell提供了declare和typeset两个命令用于指定变量的类型,两个命令是完全等价的. 一.高级变量用法--定义有类型变量declare [选项] 变量名 -r 将变量设置为只读属性  等同于使用export V

​老男孩教育每日一题-第98天-shell知识点:shell脚本中字符串截取的常用用法?

答案参考: 假设有变量var=http://www.oldboyedu.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. 变量: var=http://www.oldboyedu.com/123.htm echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.oldboyedu.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符. 变量

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

Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从左边开始删除最后(最右边)一个

Linux下的shell脚本的字符串截取

1 #! /bin/bash 2 3 str="http://www.baidu.com/test.htm" 4 5 #echo ${str} 运行结果为:http://www.baidu.com/test.htm 方法一:#截取,删除左边字符,保留右边字符 echo ${str#*//} #*//表示从左边删除第一个//号及左边的所有字符,即删除http:// 运行结果为:www.baidu.com/test.htm 方法二:##截取,删除左边字符,保留右边字符 echo ${str

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

1.#号截取,删除左边字符,保留右边字符. 代码:echo ${var#*//} 其中var是变量名,#是运算符,*//表示从左边开始删除第一个//及左边的所有字符 示例: 结果: 2.##截取,删除左边字符,保留右边字符 代码:echo ${var##*/} 其中##*/表示从左边开始删除最后(最右边)一个/号及左边的所有字符 示例: 结果: 3.% 号截取,删除右边字符,保留左边字符 代码:echo ${var%/*} 其中%/*表示从右边开始,删除第一个/号及右边的字符 示例: 结果: 4

[转载]Linux shell脚本的字符串截取

假设有变量 var=http://www.google.com/test.htm 一 # 号截取,删除左边字符,保留右边字符.echo ${var#*//}其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.google.com/test.htm 二 ## 号截取,删除左边字符,保留右边字符.echo ${var##*/}##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符即删除 http:/

Linux shell脚本的字符串截取

假设有变量 var=http://www.hao.com/123.htm 一. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.hao.com/123.htm  二 .## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符 即删除 http

shell脚本实现检测回文字符串

所有回文字的结构特征如下: 如果字符数是偶数,那么它在结构上表现为:一个字符序列连着另一个字符相同但次序恰好相反的字符序列. 如果字符数为奇数,那么它在结构上表现为:一个字符序列连着另一个字符相同但次序恰好相反的字符序列,但是这两个序列中间共享一个相同的字符. sed命令能够记住之前匹配的子样式.可以用正则表达式:'\(.\)',匹配任意一个字符,\1表示其反向引用.如匹配有两个字符的回文正则表达式为: '\(.\)\(.\)\2\1' 匹配任意长度的回文脚本如下所示: #!/bin/bash