shell从字符串中提取,替换字符

本文介绍了如何从 RPM 包文件名中提取版本号,使用了 `grep` 和 `sed` 命令。通过 `grep -Eo` 打印匹配的扩展正则表达式,以及 `sed` 的替换功能,可以有效地提取出 `libgcc-4.8.5-4.h5.x86_64.rpm` 中的 `4.8.5` 作为版本号。
摘要由CSDN通过智能技术生成

假设需要提取libgcc-4.8.5-4.h5×64.rpm中的版本号

grep

echo "libgcc-4.8.5-4.h5×64.rpm" | grep -Eo "[0-9]+\.[0-9]+.*x86_64"

grep 的 -o 选项,可以只打印匹配的部分,否则会打印整行

sed

echo "libgcc-4.8.5-4.h5.x86_64.rpm" | sed -r "s/libgcc-([0-9]+\.[0-9]+.*)\.rpm/\1/g"

 

用法: grep [选项]… 模式 [文件]…
-E, --extended-regexp <模式> 是扩展正则表达式
-o, --only-matching 只显示行中非空匹配部分
[] #匹配一个指定范围内的字符,如’[Gg]rep’匹配Grep和grep。

 

用法:tr [选项]… SET1 [SET2]
-d, --delete delete characters in SET1, do not translate
#删除SET1中的字符,不进行翻译
\n 换行

 

参考文章:https://www.codenong.com/cs105976279/

https://www.cnblogs.com/jmliao/p/11808592.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值