小编bas*_*ion的帖子

用于验证 rpm 是否至少为给定版本的 Bash 脚本

我需要编写一个脚本来验证 RPM 至少是 Linux 中的给定版本。

  • 问题 1:如何在变量 $RPM_VERSION 中获取 RPM 版本,以便它包含一直到“.src.rpm”的版本?
  • 问题 2:比较这两个版本的最佳方法是什么?

例如:rpm-4.2-9.69.src.rpm 对比 rpm-4.14-0.69.src.rpm。这是我的尝试,但不起作用:

STR_BASE_ACCEPTABLE_VER="rpm-4.2-0.69.src.rpm"

if  [[ "$RPM_VERSION" < "$STR_BASE_ACCEPTABLE_VER" ]]; then   
    echo "$RPM_VERSION is too low..."  \
else   
    echo "$RPM_VERSION is fine"  \
fi
Run Code Online (Sandbox Code Playgroud)

linux bash rpm version

5
推荐指数
1
解决办法
1万
查看次数

使用正则表达式搜索并删除

如何在 bash 中使用正则表达式来搜索任何给定的字符串并删除特定单词的出现?这是我想出的表达方式

^([A-Za-z-]+)(-).*(el6.*)$
Run Code Online (Sandbox Code Playgroud)

我想要完成的是,在给定的字符串中,如cjkuni-ukai-fonts-0.2.20080216.1-35.el6.noarch,表达式应删除cjkuni-ukai-fonts-and el6.noarch,并仅保留0.2.20080216.1-35。由于我可以在系统上安装的内容非常有限,因此我无法使用 perl 或其他非基本命令。任何帮助,将不胜感激。

PS:我尝试过 sed,但无法使其工作。

shell-script regular-expression

2
推荐指数
1
解决办法
8272
查看次数

标签 统计

bash ×1

linux ×1

regular-expression ×1

rpm ×1

shell-script ×1

version ×1