我想知道是否有人知道是否有办法自动递增rpm包中的信息的版本号/发行版号。Rpm包信息:自动递增版本
即
转-qil '包名'
将返回类似:
Name: package_name
Version: 1.5
Release: 000001
是否有办法来自动递增的版本号我每次执行时间的rpmbuild? rpm信息位于spec文件中。
在此先感谢!
我想知道是否有人知道是否有办法自动递增rpm包中的信息的版本号/发行版号。Rpm包信息:自动递增版本
即
转-qil '包名'
将返回类似:
Name: package_name
Version: 1.5
Release: 000001
是否有办法来自动递增的版本号我每次执行时间的rpmbuild? rpm信息位于spec文件中。
在此先感谢!
如果你不介意有划时代的版本号,你可以这样做:
Release: 0.%(perl -e 'print time()')
我把0在前面的,所以如果你想永远使用比划时代其他一些原因发布标签,而不是更改版本,你可以。
您还可以设置和环境变量,像这样:
export RPM_VERSION=1.1.1
,然后使用Perl来抓住它:
perl -e 'print $ENV{RPM_VERSION}'
这就是我关于竹建筑的RPM时使用。
你知道环境变量在bash中也是可用的 - 只要做$( echo $ RPM_VERSION),你不必调用perl – Ramfjord 2015-06-17 19:48:08
您可以尝试添加到您的Makefile是这样的:
perl -i.`date +"%s"` -pe 'if (/^Release:/) { s#(\d+)#$1+1#e }' YOURSPECFILE.spec
每到这个oneliner运行时,它增加开头的行中找到整数“释放”。
该操作是在原地完成的,出于安全原因,SPEC文件的先前内容被保存在一个备份文件中,其历元编号附在文件名上。如果您只需要一次备份,或者您确信没有错误发生,您也可以使用类似“-i.BAK”的内容,或者只需要“-i”。
有没有什么办法只更改版本号 – anish 2012-04-14 18:10:08
我不明白你的问题在这里。 – 2012-04-14 20:58:25
我已经使用rpm -i命令安装了一个RPM软件包,当我查询rpm -q时,它向我显示了我在spec文件中描述的版本,现在我想单独更改版本号,而不影响任何文件,我该如何执行这, – anish 2012-04-15 05:29:20