zoukankan      html  css  js  c++  java
  • 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命令:

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

    man -k 的使用

    使用man -k stat | grep file查找与stat(状态)和file(文件)相关的内容,找到了如下内容。

    非常多的内容,其中,我们进一步了解名为stat的系统调用。

    man 2 stat查看学习。

    发现通过使用stat系统调用,会返回一个结构体,其中包含了我们需要输出的信息。按理说只要根据文件路径获取到这个结构体,然后再进行格式化输出就可以了。

    grep -r 的使用

    在编写代码的过程中,会遇到很多不知道的类型和宏定义,需要使用grep -r xx /usr/include
    如:第二个需要输出的,是文件大小。

    发现有一个变量:st_size不清楚其类型意义。使用grep -r st_size /usr/include查询。

    3. 伪代码

    1.判断输入中是否包含文件参数,如果有则继续,没有则提示用户输入错误
    2.声明结构体,并调用stat()函数给结构体赋值
    3.逐个取出结构体中的数据并输出即可
    4.注意文件的mode需要switch来判断

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

    https://gitee.com/ye_jia_xing/system-programming/blob/master/week09/mystat/mystat.c

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

    ———————————————————————————————————————————————————————————————— 转载麻烦附上本文链接和本声明,感谢! 博主<叶家星>博客园链接如下:https://www.cnblogs.com/yejiaxing-01/
  • 相关阅读:
    自习任我行第二阶段个人总结5
    自习任我行第二阶段个人总结4
    自习任我行第二阶段个人总结3
    自习任我行第二阶段个人总结2
    自习任我行第二阶段个人每日总结1
    bootstrap table
    log4j2 的使用
    新版本MySQL Server 5.7的免安装版本设置
    工作随笔 2016-5-19
    在windows 下安装启动redis
  • 原文地址:https://www.cnblogs.com/yejiaxing-01/p/15518207.html
Copyright © 2011-2022 走看看