Chinaunix首页 | 论坛 | 博客
  • 博客访问: 361262
  • 博文数量: 161
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 345
  • 用 户 组: 普通用户
  • 注册时间: 2013-12-13 11:04
文章分类

全部博文(161)

文章存档

2015年(15)

2014年(144)

2013年(2)

我的朋友

分类: C/C++

2014-11-04 15:32:35

 linux中如何判断一个文件是否存在?

  除了用stat之类函数判断外,还可以用access函数,且后者用起来更简单。
  用stat时,示例如下:
   int exec_log()
  {
        struct stat st;
        memset(&st,0,sizeof(st));
        if(!stat("/home/log_url",&st)){//如果log_url不存在,stat就会返回非0
                if(st.st_size >= 0){//加了一层保证
                    int pid=fork();
                    if(!pid){
                        printf("start ...\n");
                        execl("/home/log_update","/home/log_update",NULL);
                        printf("log_update failed\n");
                    }else if(pid > 0){
                        return 0;
                    }else{
                        printf("exec log error!\n");
                    }
                }
        }
        return 1;
  }
   用access函数的例子:
        if ( !access ("/home/log_url", F_OK) ) {
                if(system("/home/log_update") == -1)
                        printf ("exec log_update failed!\n");
        }else{
              printf ("log_url not existed!\n");
        }
阅读(791) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~