本文主要是介绍shell学习笔记(三):使用shell脚本打包软件程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在项目开发过程中,我们常常需要在脱离源码的情况下,去运行程序,进行相关测试。所以就需要对程序打包,并使用svn号进行管理这些打包的程序,便于后续去追溯版本。
对于小公司,可以简单的使用shell脚本,将程序和资源文件压缩到文件中,并带有svn版本的的命名,来进行维护。最近就写了一个简单的脚本来做这个工作,这里记录一些关键的地方,方便后续查阅。
查看svn版本号:
svnversion -c |sed ‘s/^.* : //’ |sed ‘s/[A-Z]*$//’
这里会打印出响应的svn版本号如:2221
查询目录或文件是否存在
1. 查询目录是否存在
if [ ! -d “$product_dir” ]
2. 查询可执行文件是否存在
if [ ! -x “$src_file” ]
3. 一些查询命令选项
-e 表示文件名
-d 表示目录
-f 表示常规文件
-L 表示符号链接
-r 表示可读
-w 表示可写
-x 表示可执行
-s 表示文件长度不为0
-h f表示文件是软链接
字符串拼接
例如:
dst_file_dir=$cur_path"/product/"
变量后面直接跟响应的字符串即可
获取命令执行后的结果
例如我要获取svn的版本号,并赋值给一个变量:
svn_version= ( s v n v e r s i o n − c ∣ s e d ′ s / . ∗ : / / ′ ∣ s e d ′ s / [ A − Z ] ∗ (svnversion -c |sed 's/^.*://' |sed 's/[A-Z]* (svnversion−c∣sed′s/.∗://′∣sed′s/[A−Z]∗//’)
即使用$()就可以了。
压缩和解压tar.gz文件
压缩文件夹:
tar zcvf dst_name src_name
解压文件
tar zxvf dst_name.tar.gz
这篇关于shell学习笔记(三):使用shell脚本打包软件程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!