• stat命令的实现-mysate(必做)


    任务详情
    学习使用stat(1),并用C语言实现
    1. 提交学习stat(1)的截图
    2. man -k ,grep -r的使用
    3. 伪代码
    4. 产品代码 mystate.c,提交码云链接
    5. 测试代码,mystat 与stat(1)对比,提交截图
    1. 提交学习stat(1)的截图


    使用stat命令:



    参数选项
    -L:显示符号链接所指向文件的信息
    -f:显示文件所在文件系统的信息
    -t:以简洁方式输出信息
    -c:以特定格式输出文件的某些信息

    %a     八进制表示的访问权限
    %A     可读格式表示的访问权限
    %b     分配的块数(参见 %B)
    %B     %b 参数显示的每个块的字节数
    %d     十进制表示的设备号
    %D     十六进制表示的设备号
    %f     十六进制表示的 Raw 模式
    %F     文件类型
    %g     属主的组 ID
    %G     属主的组名
    %h     硬连接数
    %i     Inode 号
    %n     文件名
    %N     如果是符号链接,显示器所链接的文件名
    %o     I/O 块大小
    %s     全部占用的字节大小
    %t     十六进制的主设备号
    %T     十六进制的副设备号
    %u     属主的用户 ID
    %U     属主的用户名
    %x     最后访问时间
    %X     最后访问时间,自 Epoch 开始的秒数
    %y     最后修改时间
    %Y     最后修改时间,自 Epoch 开始的秒数
    %z     最后改变时间
    %Z     最后改变时间,自 Epoch 开始的秒数
    
    针对文件系统还有如下格式选项:
    
    %a     普通用户可用的块数
    %b     文件系统的全部数据块数
    %c     文件系统的全部文件节点数
    %d     文件系统的可用文件节点数
    %f     文件系统的可用节点数
    %C     SELinux 的安全上下文
    %i     十六进制表示的文件系统 ID
    %l     文件名的最大长度
    %n     文件系统的文件名
    %s     块大小(用于更快的传输)
    %S     基本块大小(用于块计数)
    %t     十六进制表示的文件系统类型
    %T     可读格式表示的文件系统类型
    
    

    2. man -k ,grep -r的使用
    
    

     stat的系统调用:

     man 2 stat查看:

    grep -r 的使用:

    
    

     3.伪代码:

    (1)读取文件参数,若没有则提示输入错误

    (2)依次输出stat()结构体中的参数

    (3)使用switch语句来判断注意文件的mode

    4.产品代码 mystate.c,提交码云链接

    mystat - 代码片段 - Gitee.com

    5.测试代码,mystat 与stat(1)对比,提交截图

     

     
     
  • 相关阅读:
    Oracle查看占用表空间最大的表(排序)
    Access denied for user 'test'@'%' to database 'mysql'
    DB2新建编目及删除编目
    DB2备份恢复schema
    Linux/Aix日常报错整理
    Oracle查看存储过程最后编辑时间
    No X11 DISPLAY variable was set
    数据库的数据进行改动,Cognos报表展示未及时更新
    Oracle数据库学习笔记_常用分区partition操作语句
    Oracle数据库学习笔记_sql 语句NVL()用法
  • 原文地址:https://www.cnblogs.com/kuohao1214/p/15521101.html
Copyright © 2020-2023  润新知