在Linux Shell提供了一种通过指定字符位数来截取字符串的命令(字符串切片)。因该使用方式较为少见,特此记录。
截取字符串中第n个字符后的部分
基本语法
${var:n}
使用示例
[root@host-10-172-16-44 ~]$ echo $VAR
abcdef
[root@host-10-172-16-44 ~]$ echo ${VAR:1}
bcdef
[root@host-10-172-16-44 ~]$ echo ${VAR:2}
cdef
[root@host-10-172-16-44 ~]$ echo ${VAR:3}
def
截取第n个字符后起的m个字符
基本语法
${var:n:m}
使用示例
[root@host-10-172-16-44 ~]$ VAR=abcdef
[root@host-10-172-16-44 ~]$ echo $VAR
abcdef
[root@host-10-172-16-44 ~]$ echo ${VAR:0:1}
a
[root@host-10-172-16-44 ~]$ echo ${VAR:0:2}
ab
[root@host-10-172-16-44 ~]$ echo ${VAR:0:3}
abc
[root@host-10-172-16-44 ~]$ echo ${VAR:1:3}
bcd
从末尾开始截取n个字符
基本语法
${var: -n}
需要注意的是,“:”和“-”之间需要保留一个空格
使用示例
[root@host-10-172-16-44 ~]$ VAR=abcdefg
[root@host-10-172-16-44 ~]$ echo ${VAR: -1}
g
[root@host-10-172-16-44 ~]$ echo ${VAR: -2}
fg
[root@host-10-172-16-44 ~]$ echo ${VAR: -3}
efg
本文详细介绍Linux Shell中如何利用字符串切片功能截取字符串,包括从任意位置开始截取固定长度的子串,以及从字符串末尾开始截取特定数量的字符。这些技巧对于处理文本数据非常实用。
867

被折叠的 条评论
为什么被折叠?



