首页 > 其他分享 >stat命令的实现-mysate

stat命令的实现-mysate

时间:2022-10-16 22:47:22浏览次数:70  
标签:文件 stat mysate st 命令 mystat 截图 man

  • 提交学习stat(1)的截图
  • man -k ,grep -r的使用
  • 伪代码
  • 产品代码 mystate.c,提交码云链接
  • 测试代码,mystat 与stat(1)对比,提交截图

提交学习stat(1)的截图

安装man手

用man -f查看命令所在章节

 

在Ubuntu中通过man手册来学习 stat 命令相关使用方法:


通过stat命令可以显示以下信息:

File:显示文件名
Size:显示文件大小
Blocks:文件使用的数据块总数
IO Block:IO块大小
regular file:文件类型(常规文件)
Device:设备编号
Inode:Inode号
Links:链接数
Access:文件的权限
Gid、Uid:文件所有权的Gid和Uid。

man -k ,grep -r的使用

使用man -k, grep -r 掌握stat命令接口



stat 命令头文件及接口:

#include <fcntl.h>   
#include <sys/stat.h>
int stat(const char *file_name, struct stat *buf );

stat结构体:

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;      //文件字节数(文件大小)
    blksize_t     st_blksize;   //块大小(文件系统的I/O 缓冲区大小)
    blocks_t      st_blocks;    //块数
    time_t        st_atime;     //最后一次访问时间
    time_t        st_mtime;     //最后一次修改时间
    time_t        st_ctime;     //最后一次改变时间(指属性)
  };

伪代码

1.将文件传入系统调用stat()。
2.打印输出stat中的结构体内容。

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

运行截图:

码云链接:

https://gitee.com/sister_ben/kali/blob/master/mystat/mystat.c

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

 

标签:文件,stat,mysate,st,命令,mystat,截图,man
From: https://www.cnblogs.com/MRC-/p/16797480.html

相关文章

  • Linux结构化命令
    结构化命令定义可用于执行流程控制和改变执行顺序与语句ifcommand语句(命令退出状态码)if...thenif根据command命令返回码来判断是否执行,如果返回码的值为0,就执......
  • linux命令随笔
    用于记录平时遇到的比较有用的命令。Vim命令查找​ vim进入编辑模式之后,如果想在文件中查找某个关键字的话可以用/关键字,随后回车,文件中的关键字会高亮显示,摁n可以调......
  • 达梦数据库常用命令
    文章目录​​以管理员用户登录​​​​用户管理​​​​`创建表空间、用户并授权`​​​​`查看所有用户`​​​​常用​​​​参考文章​​以管理员用户登录su用户管理创建......
  • Linux学习笔记 | Bash基本命令
    (一)历史命令<history>格式:history[选项][历史命令保存文件]选项: -c:   清空历史命令 -w:  把缓存中的历史命令写入历史命令保存文件(~/.bash_history) 历史命令......
  • netstat命令学习
    转自:https://segmentfault.com/a/11900000226864301.介绍netstat是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态......
  • 使用conda/pip命令实现anaconda 虚拟环境的导入导出
    一.使用conda命令实现虚拟环境的导入导出1.从计算机a中导出虚拟环境test的相关信息condaactivatetest #先切换到test虚拟环境condaenvexport>C:\users\sgj\des......
  • MongoDb基本命令
    基本命令查看当前有哪些数据库#方法1showdatabases#方法2showdbs创建数据库/选择数据库usetest2#如果当前没有test2数据库就会创建test2并切换,有的话直接......
  • 【python】Ubuntu中多条命令的运行
    在模型训练时,往往需要消融实验,通常都是在一个程序运行结束后才再次手动运行下一个,不及时在电脑前可能无端浪费时间,因此需要让程序自动一个接一个去执行。受此启发,特了解了U......
  • Windows10系统命令行设置环境变量
    1.使用set临时设置环境变量用于设置临时环境变量。只在当前命令行窗口中有效。1.1cmd终端#如设置CLASSPATH$setCLASSPATH=D:\program\JavaTrainning\src#查看......
  • pip 命令批量安装python包
    1.PyPI:PythonPackageIndex,thedefaultrepository(仓库)ofPythonpackagesforPythoncommunitythatincludesframeworks,toolsand,libraries.    ......