linux 中字符串扩展处理
001、字符串首字母转换为大写;以及全部转换为大写
[root@PC1 test1]# str1="abcde" ## 测试字符串 [root@PC1 test1]# echo ${str1^} ## 首字母转换为大写 Abcde [root@PC1 test1]# echo ${str1^^} ## 全部转换为大写 ABCDE
002、字符串首字母转换为小写;以及全部转换为小写
[root@PC1 test1]# str1="ABcdEFgH" [root@PC1 test1]# echo $str1 ABcdEFgH [root@PC1 test1]# echo ${str1,} ## 首字母转换为小写 aBcdEFgH [root@PC1 test1]# echo ${str1,,} ## 全部转换为小写 abcdefgh
003、获取字符串的长度
[root@PC1 test1]# str1="abcdEF" [root@PC1 test1]# echo ${#str1} ## 获取字符串str1的长度 6 [root@PC1 test1]# str2="abc" [root@PC1 test1]# echo ${#str2} ## 获取字符串str2的长度 3
004、截取字符串
[root@PC1 test1]# str1="abcdefg" ## 测试字符串 [root@PC1 test1]# echo $str1 abcdefg [root@PC1 test1]# echo ${str1:1} ## 字符串的1到最后 bcdefg [root@PC1 test1]# echo ${str1:1:3} ## 字符串的1到3 bcd
005、判断字符串是否定义
[root@PC1 test1]# unset str1 ## 空字符串 [root@PC1 test1]# echo ${str1?"undefine"} ## 输出后半部分;未定义 -bash: str1: undefine [root@PC1 test1]# str1="abcd" ## 定义字符串 [root@PC1 test1]# echo ${str1?"undefine"} ## 输出字符串 abcd
006、查找并替换字符串
[root@PC1 test1]# str1="abcdabcdxyabcd" ## 测试字符串 [root@PC1 test1]# echo $str1 abcdabcdxyabcd [root@PC1 test1]# echo ${str1/abc/QQQ} ## 仅替换第一个 QQQdabcdxyabcd [root@PC1 test1]# echo ${str1//abc/QQQ} ## 替换全部 QQQdQQQdxyQQQd
007、字符串截取
a、从左侧删除
[root@PC1 test1]# var=GCF_000001735.4_TAIR10.1_genomic.fna ## 测试字符串 [root@PC1 test1]# echo ${var#*.} ## 删除第一个.前边的内容 4_TAIR10.1_genomic.fna [root@PC1 test1]# echo ${var##*.} ## 删除最后一个点前边的 fna
b、从右侧删除
[root@PC1 test1]# var=GCF_000001735.4_TAIR10.1_genomic.fna [root@PC1 test1]# echo ${var%.*} ## 删除左侧第一个.右侧的内容 GCF_000001735.4_TAIR10.1_genomic [root@PC1 test1]# echo ${var%%.*} ## 删除从左侧最后一个.右侧的内容 GCF_000001735
。
分类:
linux shell
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律