bash – 从字符串中提取版本号
发布时间:2020-12-15 18:58:21 所属栏目:安全 来源:网络整理
导读:我有一个包含组件和版本号的字符串: 数据-C(KUH-small1);除法器 – 滨1.4.4;除法器 – CONF-1.3.3-W(1,16);存储彬1.5.4;存储CONF-1.5.0-W( 1);工人彬4.5.1;工人CONF-4.4.1-C(KUH)-win2 对于shell脚本,我需要提取分隔符二进制文件的版本号.所以我需要屈服:
我有一个包含组件和版本号的字符串:
数据-C(KUH-small1);除法器 – 滨1.4.4;除法器 – CONF-1.3.3-W(1,16);存储彬1.5.4;存储CONF-1.5.0-W( 1);工人彬4.5.1;工人CONF-4.4.1-C(KUH)-win2 对于shell脚本,我需要提取分隔符二进制文件的版本号.所以我需要屈服: 1.4.4 这样做有什么好办法?用sed?
在
Kent’s answers之后,这可以工作:
grep -Po '(?<=divider-bin-)d.d.d' 甚至更好: grep -Po '(?<=divider-bin-)[^;]+' 它从divider-bin中掠过 – 直到它找到;字符.这样任何NNN.NNN. …… NNN格式将起作用(无论NN有多少块). 测试: $echo "data-c(kuh-small1);divider-bin-1.4.4;divider-conf-1.3.3-w(1,16);storage-bin-1.5.4;storage-conf-1.5.0-w(1);worker-bin-4.5.1;worker-conf-4.4.1-c(kuh)-win2" | grep -Po '(?<=divider-bin-)[^;]+' 1.4.4 $echo "data-c(kuh-small1);divider-bin-1.4;divider-conf-1.3.3-w(1,16);storage-bin-1.5.4;storage-conf-1.5.0-w(1);worker-bin-4.5.1;worker-conf-4.4.1-c(kuh)-win2" | grep -Po '(?<=divider-bin-)[^;]+' 1.4 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |