软件有版本号,但是有时候想从log里面知道是什么时候编译的,所以想通过编译脚本在编译前修改代码,在编译的时候把编译时间写入代码,然后代码运行的时候打印出来。
修改编译脚本sh文件,加入:
time=$(date "+%Y%m%d-%H%M%S")
echo ${time}
sed -i "s/build_time/${time}/g" 123.c
解释一下,在123.c文件中用编译脚本执行时获取的时间字符串替换源码中build_time这个字符串(位于程序中log打印语句里)。 这样编译前代码就被自动修改了,然后程序执行时log就可以打印出来此日期。