【shell】shell字符串操作(声明、长度、拼接、切片、转换、替换等操作)

简介: 【shell】shell字符串操作(声明、长度、拼接、切片、转换、替换等操作)

👉博__主👈:米码收割机

👉技__能👈:C++/Python语言

👉公众号👈:测试开发自动化

👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术


shell字符串操作(声明、长度、拼接、切片、转换、替换等操作)



1. 单、双引号的区别

1.1 单引号

使用单引号括起来的字符串中的所有字符都会被原样输出,不会进行变量替换和转义字符的处理,例如:

str='Hello $USER, today is $(date)'
echo $str # 输出 Hello $USER, today is $(date)

1.2 双引号

使用双引号括起来的字符串中的变量会被解释成它们的值,并且转义字符会被处理,例如:

user="Tom"
str="Hello $user, today is $(date)"
echo $str # 输出 Hello Tom, today is Mon May 10 00:00:00 UTC 2023

另外,双引号中也可以使用反斜杠对特殊字符进行转义,例如:

str="Hello \"world\"!"
echo $str # 输出 Hello "world"!

2. 字符串声明

st1 = 'zhangsan'
st2 = 'lisi'

3. 字符串拼接

3.1 双引号拼接

# 方法一:
na='sunwukong1'
na1="hello,${na}!"
echo $na1             # 输出:hello,sunwukong1!
# 方法二:
na='sunwukong1'
na1="hello,"${na}"!"  
echo $na1             # 输出:hello,sunwukong1!

3.2 单引号拼接

na='sunwukong'
na1='hello,'$na'!'
echo $na1             # 输出:hello,sunwukong!
na='sunwukong'
na2='hello,${na}!'
echo $na2             # 输出:hello,${na}!  不转译

3.3 直接拼接

str1="Hello"
str2="World"
echo $str1$str2 # 输出 HelloWorld

4. 字符串长度

string="Hello World"
echo ${#string}       # 输出 11

5. 字符串切片

${string:position:length}来截取字符串,其中position是起始位置,length是截取的长度。

na='sunwukong'
echo ${na:1:3}     # 输出:unw

6. 字符串替换

string="Hello World"
echo ${string/Hello/Hi} # 输出 Hi World
echo ${string//o/0}     # 输出 Hell0 W0rld

7. 字符串查找

${string#substring}可以从字符串开头删除最短的匹配子字符串

${string##substring}可以从字符串开头删除最长的匹配子字符串。

string="Hello World"
echo ${string#Hello} # 输出 World
echo ${string##H} # 输出 ello World

8. 字符串大小写转换

${string^^}可以将字符串中所有字符转换为大写

${string,}可以将字符串中所有字符转换为小写

string="Hello World"
echo ${string^^} # 输出 HELLO WORLD
echo ${string,,} # 输出 hello world


相关文章
|
2月前
|
JavaScript 关系型数据库 Shell
Linux shell编写技巧之随机取字符串(一)
本文介绍了Linux Shell脚本的编写技巧,包括环境配置、变量命名规则和缩进语法,并提供了一个实例练习,展示如何使用`$RANDOM`变量和`md5sum`命令来生成随机的8位字符串。
37 4
|
4月前
|
存储 Shell 开发者
Shell 数组:灵活操作的秘诀
**Shell 数组简介**:作为基础数据结构,数组在Shell编程中不可或缺。它们存储多个值,下标从0开始。创建如`array=(值1 值2...)`,访问用`${array[index]}`。增删改查及获取长度、拼接数组都有相应语法,例如`unset array[index]`删除元素,`${#array[@]}`获取长度。通过实践这些操作,提升Shell脚本技能。
22 0
|
4月前
|
监控 Shell 开发者
Shell 字符串操作:让你的脚本语言更加灵活
在Shell脚本中,字符串操作至关重要,包括计算长度、连接与截取。获取字符串长度使用`${#变量名}`,如`echo ${#name}`显示`4`。字符串连接可通过`$变量名`或`${变量名}`实现,例如`name=alex; str1=$name$age`。字符串截取有多种方式,如`${str:起始位置:长度}`从左边截取,`${str#*chars}`从左边去除匹配的字符,`${str%*chars}`则从右边去除。通过练习这些基本操作,能提升Shell脚本的编写效率。
24 0
|
4月前
|
Shell 数据安全/隐私保护 Perl
shell 截取某个字符串之后的内容
shell 截取某个字符串之后的内容
44 0
|
4月前
|
Shell Linux
linux shell脚本字符串 字段分隔符 存入数组 根据下标取值
linux shell脚本字符串 字段分隔符 存入数组 根据下标取值
48 0
|
4月前
|
机器学习/深度学习 Shell Linux
linux shell脚本判断文件或文件夹是否存在循环操作
linux shell脚本判断文件或文件夹是否存在循环操作
113 0
|
5月前
|
人工智能 机器人 Shell
【shell】shell函数操作(有参、无参、有返回值、无返回值)
【shell】shell函数操作(有参、无参、有返回值、无返回值)
|
5月前
|
人工智能 机器人 Shell
【shell】shell数组的操作(定义、索引、长度、获取、删除、修改、拼接)
【shell】shell数组的操作(定义、索引、长度、获取、删除、修改、拼接)
|
2天前
|
监控 Unix Shell
shell脚本编程学习
shell脚本编程
22 12
|
6天前
|
Shell
shell脚本变量 $name ${name}啥区别
shell脚本变量 $name ${name}啥区别