RPM命令大全
日期:2007年8月7日 作者: 查看:[大字体 中字体 小字体]-
条件语句的使用
在软件包描述文件中,可以灵活地使用条件语句,位置不限制。这些语句,用于当前体系与操作系统的判断,当条件为真或为假时,RPM均会引用其相应的描述内容。
条件语句有两种格式:
1. {%ifarch,%ifnarch,%ifos,%ifnos} 值1 [值2] ...
描述内容
%endif
注: {}所括内容必选其中之一,[]所括为可选项,各个值之间以空格分隔,%endif表示条件语句结束。
此语句的含义是:
1) 使用%ifarch时,表示如果当前体系为值1或值2...,则引用描述内容。
2) 使用%ifnarch时,表示如果当前体系不为值1或值2...,则引用描述内容。
3) 使用%ifos时,表示如果当前操作系统为值1或值2...,则引用描述内容。
4) 使用%ifnos时,表示如果当前操作系统不为值1或值2...,则引用描述内容。
如果想在LZE包描述文件的文件段增加只适用于sparc体系的文件/etc/sparc.lze和 /etc/sparc.ime,则可在文件段内加入如下语句:
%ifarch sparc
/etc/sparc.lze
/etc/sparc.ime
%endif
这样做以后,如果当前体系为sparc,则RPM在打包时会加入这两个文件。
2. {%ifarch,%ifnarch,%ifos,%ifnos} 值1 [值2] ...
描述内容1
%else
描述内容2
%endif
注: {}所括内容必选其中之一,[]所括为可选项,各个值之间以空格分隔,%else表示另外一种情况,%endif表示条件语句结束。
此语句的含义是:
1) 使用%ifarch时,表示如果当前体系为值1或值2...,则引用描述内容1,否则引用描述 内容2。
2) 使用%ifnarch时,表示如果当前体系不为值1或值2...,则引用描述内容1,否则引用描述内容2。
3) 使用%ifos时,表示如果当前操作系统为值1或值2...,则引用描述内容1,否则引用描述内容2。
4) 使用%ifnos时,表示如果当前操作系统不为值1或值2...,则引用描述内容1,否则引用描述内容2。
如果想根据当前操作系统来确定LZE包的名字,则可在描述文件头使用如下语句定义Name域:
%ifos linux
Name : lzeforlinux
%else
%ifos aix
Name : lzeforaix
%else
Name : lzeforothersys
%endif
%endif
本例中使用了嵌套的条件语句,它说明的情况是:如果操作系统为linux,则软件名定为lzeforlinux,如果操作系统为aix,则软件名定为lzeforaix,如果不是上述两个操作系统,则将软件名定为lzeforothersys。
如何在描述文件中使用宏(macros)
1. 宏是什么?
学过C语言的人都知道,宏是用来实现文本替换的,即定义了宏名与宏体后,文件中所有有宏名的地方在预处理时将被宏体替换掉。使用宏可以减少文字的录入量,方便了编程人员。在软件包描述文件中使用宏,也是基于这个目的,只不过这个宏与C语言的宏定义格式不同而已。
2. 宏的定义
描述文件中宏的定义格式为:
%define [(opts)]
注: []所括为可选项。为宏名,宏名可用字母,数字和下划线(_),并且其长度最小为3。opts为一个或多个选项,各选项之间无分隔,选项采用getopt函数要求的形式,即选项为单个字符,如果某个选项需要参数,则需要在这个选项后加个冒号(:)。为宏体,它周围的空字符将被删掉。宏体的内容须在一行上。
如没有选项的宏定义:
%define aaa "This is my software" - 上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] 下一页
-
- RPM命令大全 相关文章:
- ·春节新年新春对联大全
- ·香港三级片名单大全 (包括演员名单)
- ·经典歇后语大全
- ·感人情书大全-情书经典
- ·路由器安全设置详解
- ·英语格言大全
- ·古代情诗:伤感浪漫悲伤情诗大全
- ·CPU型号大全总结
- ·幻世录2魔神战争 完全物品列表 - 游戏攻略
- ·男女生英文名大全-给自己起个好名字
- RPM命令大全 相关软件
- ·瑞星杀毒软件 2007 V19.32.12 完全免费版
- ·火影忍者-忍术全开
- ·Kaspersky(卡巴斯基) KIS 安全套装 V6.0.2.621 MP2 简体中文正式免激活版
- ·中国法律法规大全(电子版) V3.3
- ·生活宝典系列之——家常美食菜谱大全(完整版) V3.0.3
- ·全能音频转换通 V1.2
- ·全能格式转换(Konvertor) V3.45.1 汉化版
- ·魔法门英雄无敌3全集
- ·《暗黑破坏神2毁灭之王》v1.11地图全开工具EasyMap_v11
- ·《仙剑奇侠传2》全过程存档
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:mrtg的调试和使用
精品推荐
热点TOP10
- ·什么是MIS
- ·Linux操作系统源代码详细分析
- ·BIOS知识大全
- ·Linux学习手册
- ·Vi命令一览表
- ·linux知识大全
- ·Linux/Unix环境下的make命令详解
- ·LINUX 常见问题1000个详细解答
- ·Linux循序渐进(19):shell
- ·RPM命令大全
- ·Linux中QQ的配置
- ·Linux主要shell命令详解
- ·最新linux iso光盘下载点
- ·Linux发行版图标大全
- ·常见端口表汇总
- ·linux内核编译详解
- ·Linux From Scratch安装学习笔记
- ·万能声卡驱动(Alsa)的安装方法
- ·Linux下用pptp连接VPN服务器
- ·Bourne shell编程入门及脚本测试
特别推荐
- ·BIOS知识大全
- ·如何编写Linux设备驱动程序
- ·Linux管理工具介绍
- ·Linux操作系统源代码详细分析
- ·Linux下用pptp连接VPN服务器
- ·在linux7.1上安装jdk+tomcat+oracle9i笔记
- ·Linux学习手册
- ·学习Linux的八点忠告
- ·深入分析Linux防火墙
- ·UNIX系统后门的安放和日志的擦除
- ·揭开Expect的神秘面纱
- ·万能声卡驱动(Alsa)的安装方法
- ·长篇连载--arm linux演艺---序
- ·为CanonPIXMAiP1000喷墨打印机安装驱动程序
- ·详细讲解Linux系统下ADSL拨号上网方法
- ·使用ImageMagick 的提示与技巧
- ·轻松实现 Linux系统下互联网过滤功能
- ·Linux下一些故障现象以及解决的相关资源
- ·重安装gentoo 2005.1 for AMD64版经验
- ·Linux/Unix环境下的make命令详解
