免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1452 | 回复: 3
打印 上一主题 下一主题

[Linux] 一个小问题 关于文件的 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-05-09 14:35 |只看该作者 |倒序浏览
本帖最后由 homerzhou 于 2013-05-09 14:52 编辑

怎么判断一个文件没有被修改过..........

其实 是在使用make的时候 想到的这个问题
如果你没修改过文件,make就不会去编译你这个文件
那它是怎么判断你有没有修改过 某个文件....


比如,30分钟前  你修改了一个文件,然后make   会去编译这个文件
        20分钟钱  你又再次修改这个文件,  然后make  ,那make怎么去判断 是不是该去编译这个文件呢

我理解 它的比较是: 比较文件的最后修改时间和上一次make的时间,  可是它怎么知道 make的上一次时间,所以 基本应该不是这个判断方法

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
2 [报告]
发表于 2013-05-09 16:29 |只看该作者
本帖最后由 MMMIX 于 2013-05-09 16:30 编辑

回复 1# homerzhou


    make 是通过比较 target 和 dependences 的时间戳来判断是不是需要更新 target,例如对于规则

  1. T: D1 D2
  2.     update-command
复制代码
如果 T 比 D1、D2 中的任意一个更老,那么就执行 update-command 更新 T。

论坛徽章:
0
3 [报告]
发表于 2013-05-10 11:35 |只看该作者
根据文件修改时间判断.
比如A,B两个文件生成C,那么最终生成后的C文件的修改时间肯定比A和B要晚,
如果make程序发现A或B的文件修改时间比C要晚,则重新生成.否则就不必重新生成.
这也是make程序工作的原理之一.

论坛徽章:
0
4 [报告]
发表于 2013-05-10 22:56 |只看该作者
噢噢噢噢噢噢噢噢,厉害呀,这个 逻辑正确  晓得了 谢谢哦哦哦回复 3# shaohongqiang


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP