LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 680|回复: 9

怎么知道一个文件被读取了多少次?

[复制链接]
发表于 2003-11-19 16:01:32 | 显示全部楼层 |阅读模式
看到网络版有位兄弟只允许客户端登陆只服务端只请求三次,每次必定要查看passwd文件。。。。。就。。。。

help me!!!
发表于 2003-11-20 21:52:50 | 显示全部楼层
可以再弄个文本文件来记录文件名和次数啊。
如果是二进制文件,在开头弄个标记也行啊。
 楼主| 发表于 2003-11-20 22:18:46 | 显示全部楼层
怎么弄:ask:ask
发表于 2003-11-22 14:22:16 | 显示全部楼层
读一次就写一次日志文件呗。
 楼主| 发表于 2003-11-22 16:32:43 | 显示全部楼层
怎么弄:ask :ask
发表于 2003-11-22 20:26:00 | 显示全部楼层
想用系统提供的函数是没有办法的

那就自己想办法
发表于 2003-11-22 20:26:57 | 显示全部楼层
设计中最重要的是思考
而不是写代码的过程

写代码随便找个人来就行了
而你的思考水平将决定你值多少钱
发表于 2003-11-27 10:11:49 | 显示全部楼层
版主说的是
不过随便找个人来你放心么,哈哈
 楼主| 发表于 2003-12-29 21:22:37 | 显示全部楼层
最初由 x11 发表
版主说的是
不过随便找个人来你放心么,哈哈


我晕~~~~~~~
请看看这个程序,目的是要是文件被访问了三次就退出,执行是有N多输出,怎么让它没有多余的输出呢?


     9  #include <stdio.h>
    10  #include <stdlib.h>
    11  #include <sys/stat.h>
    12  #include <unistd.h>
    13  time_t GET_ACCESS_TIME ()
    14    {
    15      struct stat buf;
    16      if( stat( "/root/fstab", &buf ) != -1 ) {
    17        printf( "File last access time = %d\n", buf.st_atime );
    18      }  /* time_t   st_atime   time when file date was last access */
    19      return (buf.st_atime);
    20    }
    21  int main ()
    22  {
    23  int count=0;
    24  time_t access_old,access_new;
    25  access_old=GET_ACCESS_TIME();
    26  while (1) {
    27  access_new=GET_ACCESS_TIME();
    28        if( access_old != access_new) {
    29            ++count;
    30            access_old=access_new;
    31            sleep (0.1);
    32          }
   33      if ( count == 3 ) {
    34           printf("the /root/fstab already access 3 time !\n");
    35           return (access_new);
    36         }
    37   }
    38  exit (0);
    39  }
运行时出现很多这样的输出:
File last access time = 1072733084
File last access time = 1072733084
File last access time = 1072733084
File last access time = 1072733084
我想不要这些。
 楼主| 发表于 2003-12-29 22:39:50 | 显示全部楼层
/* printf( "File last access time = %d\n", buf.st_atime ); */
在函数那里加了/ * ..... */ 就行了。

但怀疑有漏洞,请问这个程序有什么漏洞吗?
:help
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表