linux shell 字符串截取总结

linux中对字符串的处理:

1.字符串分割例如  AAAAA-BBBBBB  按-分割去前后两部分

 cut :

[rich@localhost ~]$ str=AAAAA-BBBBBB
[rich@localhost ~]$ echo $str | cut -d "-" -f 1
AAAAA
[rich@localhost ~]$ echo $str | cut -d "-" -f 2
BBBBBB

解释:A | B  将A命令的输出 作为B命令的输入

cut

-d  :分隔符

-f   : field  分割后的数组索引 只不过是从1开始

如果不存在分割符则返回全部:

[rich@localhost ~]$ echo $str | cut -d "c" -f 1
AAAAA-BBBBBB

 

 

expr  && cut:

 

取“-”的索引

[rich@localhost ~]$ index=`expr index  "${str}" "-"`

[rich@localhost ~]$ echo $str | cut -c`expr "${index}" + 1`-
BBBBBB
[rich@localhost ~]$ echo $str | cut -c1-`expr ${index} - 1`
AAAAA

cut

-c 截取字符串 索引从1开始

-cA-   A到末尾

-cA  A位置

-c A-B   索引A-B

-c-A   截取前A个字符

substr:

[rich@localhost ~]$ index=`expr ${index} - 1`

[rich@localhost ~]$ echo `expr substr "${str}" 1 ${index}`
AAAAA

substr  str A  B

从索引A开始截取B长度的字符串

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值