[Unix]shell编程珠玑(4)-- 读取属性文件和访问CVS
2011-02-18 10:31
330 查看
1 读取属性文件
属性文件名为:config.prop
内容为:CVSROOT="aaa"
在Shell 中调用:
CVSROOT=`grep "CVSROOT" config.prop | cut -f2 -d"=" | tr -d ' "'`
这样CVSROOT 变量就为aaa 了。
2 访问CVS
可以参考: 1) 车东先生的 CVS使用手册
2) ChinaUnix.net
CVS 中文手册
项目中要求从CVS 上下载代码,当发现有新的代码变动时,才进行Build。解决的办法挺简单的,就是调用
cvs co "${projectName}"> CVSchange.txt 命令checkout
源代码,然后检查CVSchange.txt 是否为空,空就build。但是记住,build
的时候需要在一份源代码的拷贝中完成。这样不会影响本地的cvs 代码。
当然,应该现在机器上登录cvs (cvs -d :pserver:cvs_user_name@cvs.server.address:/path/to/cvsroot login),然后在自动的执行脚步。
代码如下:
属性文件名为:config.prop
内容为:CVSROOT="aaa"
在Shell 中调用:
CVSROOT=`grep "CVSROOT" config.prop | cut -f2 -d"=" | tr -d ' "'`
这样CVSROOT 变量就为aaa 了。
2 访问CVS
可以参考: 1) 车东先生的 CVS使用手册
2) ChinaUnix.net
CVS 中文手册
项目中要求从CVS 上下载代码,当发现有新的代码变动时,才进行Build。解决的办法挺简单的,就是调用
cvs co "${projectName}"> CVSchange.txt 命令checkout
源代码,然后检查CVSchange.txt 是否为空,空就build。但是记住,build
的时候需要在一份源代码的拷贝中完成。这样不会影响本地的cvs 代码。
当然,应该现在机器上登录cvs (cvs -d :pserver:cvs_user_name@cvs.server.address:/path/to/cvsroot login),然后在自动的执行脚步。
代码如下:
#! /bin/sh ################################# # By Alf lihe2011@gmail.com # ################################# # Get properties from config.prop CVSROOT=`grep "CVSROOT" config.prop | cut -f2 -d"=" | tr -d ' "'` projectName=`grep "projectName" config.prop | cut -f2 -d"=" | tr -d ' "'` shareFolder=`grep "shareFolder" config.prop | cut -f2 -d"=" | tr -d ' "'` export CVSROOT="${CVSROOT}" echo "$CVSROOT" echo "$projectName" echo "$shareFolder" # ping cvs 主机 ping -c 1 9.123.123.12 successPing=`echo $?` if [ ! ${successPing} -eq 0 ];then echo "ping fail." else # check out rft source code cvs co "projectName"> CVSchange.txt # check code change if [ ! -s "CVSchange.txt" ];then echo "OK" else echo "Compile source code.EMail to you" # copy projectName to projectName_TEMP rm -rf projectName_TEMP cp -r projectName/ projectName_TEMP # run compile.sh cd ./projectName_TEMP/ ./compile.sh # zip product.zip zip -r product.zip * #upload zip rm -f "${shareFolder}"/product.zip cp product.zip "${shareFolder}" fi fi
相关文章推荐
- 依据不同的操作系统读取配置文件/java读取属性文件代码
- 读取属性文件config.properties中的上传文件路径
- VC++ 读取音频文件的属性
- SpringBoot 使用 @Value 从 YAML文件读取属性
- 文件磁盘相关函数[12]-读取文件属性 FileGetAttr
- NTFS文件访问权限属性
- C# 读取 文件正由另一进程使用,因此该进程无法访问该文件。
- Java里读取属性文件例子
- 不能读取 AppletViewer 的属性文件解决
- VC修改文件时间属性(修改/访问时间)
- Spring中属性文件properties的读取与使用详解
- 利用LIBXML库遍历读取XML文件所有的属性和content
- 警告:不能读取 AppletViewer 的属性文件解决
- JavaIO——java如何读取jar包自身内部的属性文件
- 使用PropertyPlaceholderConfigurer类读取外部属性文件内容到XML
- Java Web项目读取属性文件
- sysfs 文件系统 通过设备属性访问硬件(DEVICE_ATTR, LINUX)
- 警告:不能读取 AppletViewer 的属性文件解决
- skyline读取适量文件属性
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)(二)