linux 文件 IO 目录操作及文件属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 文件 IO 目录操作及文件属性相关的知识,希望对你有一定的参考价值。

////////////////////////////////////////////////
///练习:实现列出某个目录中所有文件属性(文件大小,文件最后修改时间,文件名)
//目录名由参数传入 ./dir /home/linux
#include <sys/stat.h>
#include <dirent.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
  DIR *dp; //定义一个结构体变量 打开文件目录,返回的就是指向DIR结构体的指针
  dp = opendir(argv[1]);
  struct dirent *ep; //用来保存一个文件 这种文件包含了其他文件的名字以及指向与这些文件有关的信息的指针
  ep = readdir(dp); //readdir,从目录中读出一个文件

  while( ep != NULL)
  {
    if(ep->d_name[0] != ‘.‘)
    {
      char path[100] = { 0 };
      struct stat s;
      sprintf(path, "%s/%s", argv[1], ep->d_name); // /home/linux/a.txt
      int ret = stat(path, &s);
      if(ret >= 0)
      {
        printf("%s:%d:%s\n", ep->d_name,(int)s.st_size,asctime(localtime(&s.st_atime)));
      }
    }
    ep = readdir(dp);
  }
}


/////////////////////////////////////




























以上是关于linux 文件 IO 目录操作及文件属性的主要内容,如果未能解决你的问题,请参考以下文章

linux操作手册

15Linux 文件基本属性chgrp,chown,chmod

03-Linux系统文件属性

文件操作及属性

怎么设置linux目录的属组

探秘linux-文件管理(inode理解)及管道和IO重定向