linux字符串反转,shell 字符串的处理(截取,连接,匹配,替换,翻转)

本节分享下,shell字符串处理的内容,包括:截取,连接,匹配,替换,翻转等。

1,字符串的截取

方法一:

复制代码 代码示例:

echo $a|awk ’{print substr( ,1,8)}’

substr是awk中的一个子函数,对第一个参数的进行截取,从第一个字符开始,共截取8个字符,如果不够就从第二个字符中补充

方法二

复制代码 代码示例:

echo $a|cut -b2-8

cut:对标准输入的字符串进行处理

cut -bn-m:以byte为单位,从第n个byte开始,取m个

cut -bn,m:以byte为单位,截取第n,m个byte

cut -b-n,m:以byte为单位,截取1-n,和第m个

-c:以charactor为单位

-d:指定分隔符,默认为tab

-s:使标准输入中没有delimeter

cut -f1:截取第1个域

方法三

a=123456

echo $

方法四

使用sed截取字符串的最后两位

复制代码 代码示例:

echo $test |sed ’s//(.*/)/(../)$//’

截取字符串的前2位

复制代码 代码示例:

echo $test |sed ’s/^/(../)/(.*/)//’

2,字符串的比较

好像没有什么可以比较的

3,字符串的连接

$a$b

或者

$string

4,字符串的翻转

方法一:

使用rev命令

方法二:

编写脚本实现

复制代码 代码示例:

#!/usr/bin/awk -f

{

revline = ""

for (i=1;i<=length;i++)

{

revline = substr(,i,1) revline

}

}

END{print revline}

5,字符串的匹配

grep

egrep

fgrep

6,字符串的排序

sort

7,字符串的替换

bash中:

复制代码 代码示例:

%x=abcdabcd

%echo $ # 只替换一个

bbcdabcd

%echo $ # 替换所有

bbcdbbcd

sh中:

??

如何替换/

使用sed

替换所有匹配

复制代码 代码示例:

echo $test |sed ’s/xx/yy’

替换单个匹配

??

8,得到字符串的长度:

bash当中

$

或者

expr "$VAR" : ’.*’

9,判断字符串是否为数字

10,得到字符串中某个字符的重复次数

复制代码 代码示例:

echo $a |tr "x" "/n" |wc -l

得到的结果需要减去1

或者

复制代码 代码示例:

echo $a |awk -F"x" ’{print NF-1}’

11,得到字符串中某个string的重复次数

12,将一批文件中的所有string替换

复制代码 代码示例:

for i in file_list

do

vi $i <

:g/xxxx/s//XXXX/g

:wq

!

done

13,如何将字符串内每两个字符中间插入一个字符

使用sed

复制代码 代码示例:

echo $test |sed ’s/../&[insert char]/g’

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值