zoukankan      html  css  js  c++  java
  • stat命令的实现-mysate

    任务详情

    • 学习使用stat(1),并用C语言实现
    • 提交学习stat(1)的截图
    • man -kgrep -r的使用
    • 伪代码
    • 产品代码mystate.c,提交码云链接
    • 测试代码,mysate与stat(1)对比,提交截图
    关于stat(1)
    • stat命令(可参考Linux系统stat指令用法)主要用于显示文件或文件系统的详细信息,该命令的语法格式如下:
      • -f:不显示文件本身的信息,显示文件所在文件系统的信息
      • -L:显示符号链接
      • -t:简洁模式,只显示摘要信息
    • stat命令显示的是文件的I节点信息。Linux文件系统以块为单位存储信息,为了找到某一个文件所在存储空间的位置,用I节点对每个文件进行索引,I节点包含了描述文件所必要的全部信息,其中包含了文件的大小,类型,存取权限,文件的所有者。
    • man -k stat
      image
    • Linux下的stat函数
      • 通过文件名filename获取文件信息,并保存在buf所指的结构体stat
      • 头文件
          #include <sys/stat.h>
          #include <unistd.h>
        
      • 函数
           int stat(const char *file_name, struct stat *buf );
        
      • 相关结构体
          struct stat {
            dev_t         st_dev;       //文件的设备编号
            ino_t         st_ino;       //节点
            mode_t        st_mode;      //文件的类型和存取的权限
            nlink_t       st_nlink;     //连到该文件的硬连接数目,刚建立的文件值为1
            uid_t         st_uid;       //用户ID
            gid_t         st_gid;       //组ID
            dev_t         st_rdev;      //(设备类型)若此文件为设备文件,则为其设备编号
            off_t         st_size;      //文件字节数(文件大小)
            unsigned long st_blksize;   //块大小(文件系统的I/O 缓冲区大小)
            unsigned long st_blocks;    //块数
            time_t        st_atime;     //最后一次访问时间
            time_t        st_mtime;     //最后一次修改时间
            time_t        st_ctime;     //最后一次改变时间(指属性)
          };
        

    mysate

  • 相关阅读:
    Java操作zip压缩和解压缩文件工具类
    Java操作图片的工具类
    使用Jacob操作Wrod文档的工具类代码
    Java计算文件的SHA码和MD5码
    Java 文件名操作的相关工具类
    Java中windows路径转换成linux路径等工具类
    JDBC的批量批量插入
    显示创建一个表的SQL语句
    MySQL中的保留字
    插入到Mysql数据库中的汉字乱码
  • 原文地址:https://www.cnblogs.com/besty-zyx/p/10210559.html
Copyright © 2011-2022 走看看