首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在BASH字符串结束前插入一个字符4

在BASH字符串结束前插入一个字符4
EN

Stack Overflow用户
提问于 2014-07-23 18:09:29
回答 5查看 3.9K关注 0票数 3

是否有方法在字符串结束前插入冒号4字符?例如,我有0x2aab3f439000,我需要0x2aab3f43:9000

谢谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-07-23 18:12:30

使用sed可以做到:

代码语言:javascript
复制
s='0x2aab3f439000'
sed 's/.\{4\}$/:&/' <<< "$s"
0x2aab3f43:9000
票数 8
EN

Stack Overflow用户

发布于 2014-07-23 18:24:47

代码语言:javascript
复制
$ s=0x2aab3f439000
$ echo "${s:0:(${#s}-4)}:${s:(-4)}"
0x2aab3f43:9000

备选方案(来自glenn jackman):

代码语言:javascript
复制
echo "${s%????}:${s: -4}"
票数 4
EN

Stack Overflow用户

发布于 2014-07-23 18:39:23

a=0x2aab3f439000

echo ${a:0:-4}:${a#${a:0:-4}}

输出:

0x2aab3f43:9000

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24917812

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档