#Generate main.c
#包含测试用的.c和.h的文件夹
src_dir=../LLR_TESTS
#定义一个main的shell变量
main=main.c
#Go to source and clean main
cd $src_dir
rm -f $main
#获取头文件
for tc in `ls TC*.c | sed 's/\.c//'`
do
echo "#include \"$tc.h\"" >> $main
done
echo "" >> $main
#Self test and main
echo "extern void self_test(void);" >> $main
echo "" >> $main
echo "int main()" >> $main
echo "{" >> $main
echo " /* self_test(); */" >> $main
#Call Test Cases
for tc in `ls TC*.c | sed 's/\.c//'`
do
echo " run_$tc();" >> $main
done
echo "" >> $main
#End
echo " return 0;" >> $main
echo "}" >> $main
--------------------------------------------------
for tc in `ls TC*.c | sed 's/\.c//'` 说明:
ls TC*.c --------------------------获取所有开头TC和文件格式为.c的文件
sed 's/\.c//------------------------把文件的后缀.c替换为空
`ls TC*.c | sed 's/\.c//'`--------把所有开头为TC和文件格式为.c的文件,替换为开头为TC不带后缀的文件
for tc in `ls TC*.c | sed 's/\.c//'`----申明一个tc变量,用来存放每次循环获取的开头为TC不带后缀的文件
-----------------------------------------------
----------------------------------------------
do-----------------------for循环开始
echo "#include \"$tc.h\"" >> $main ------------for循环的主要操作
done-------------------for循环结束
作为for循环的循环体,把开头为TC不带后缀的文件改变为#include \"$tc.h\" 如:#include "TC_R_17.h"
-------------------------------------------
echo "" >> $main--------输入个空行到main.c文件中