bash脚本进行大规模程序编译

2024-01-02 10:48:08

如果有多个模块需要编译,并把编译结果复制出来,显示编译花费时间和完成后的版本信息,可行使用类似下面的编译脚本。

#!/bin/bash

timeStart=`date +'%Y-%m-%d %H:%M:%S'`
start_seconds=`date +%s `
echo   '**************************************   xxMaker 1.0   **************************************'
echo   '***************************************** Start @' $timeStart '*****************************************'
echo '********Clean make....********'
	make clean
echo '********Start make....********'
	make 
echo '********make done********'

echo  '********remove update folder...********'
	rm -rf update
echo '********create update folder...********'
	mkdir -p update/APPs update/RSs 
echo '********copy all module together...********'

	APP_LIST='moudle_1 moudle_2 moudle_3 '
	RSRC_LIST='xx/Views'
	
	count=0
	for i in $APP_LIST
 	do
  		cp source/makedir/$i/$i ./update/APPS/
		count=` expr  $count + 1 `
	done
echo '********'$count 'files copied********'
	count=0
	for i in $RSRC_LIST
	 do
   		cp -r source/res/$i  ./update/RSRC/
		count=` expr  $count + 1 `
	done
echo '********' $count  'Rsrc folders copied********'
echo '********copy Version.h ...********'
	mkdir -p update/VERSION
	cp source/version/version.h ./update/VERSION
	cat  ./update/VERSION/xxversion.h 
echo  '********Version.h Copied********'

timeEnd=`date +'%Y-%m-%d %H:%M:%S'`
end_seconds=`date +%s `
cost_time=$[ $end_seconds - $start_seconds ]
cost_Min=` expr  $cost_time / 60 `
cost_S=` expr  $cost_time % 60 `

echo   '*****************************************Finished  @' $timeEnd '*****************************************'
echo   '    ********====' $timeStart  ' -->'  $timeEnd '   === Totally took: ' $cost_Min 'Minutes and ' $cost_S 'seconds===********     '
echo  '*****************************************     xxMaker1.0    All  Done        *****************************************'

————————————————————————
需要500关注,拜托顺手点个关注,谢谢

文章来源:https://blog.csdn.net/vmt/article/details/135333279
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。