Linux Shell中按位截取字符串的方法

本文详细介绍Linux Shell中如何利用字符串切片功能截取字符串,包括从任意位置开始截取固定长度的子串,以及从字符串末尾开始截取特定数量的字符。这些技巧对于处理文本数据非常实用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值