Linux获取文件信息
参考手册:http://man7.org/linux/man-pages/man2/stat.2.html
基本使用方式:
int stat(const char *pathname, struct stat *statbuf);
int lstat(const char *pathname, struct stat *statbuf);
pathname
是文件路径,statbuf
是文件状态。
lstat
的更高级的用处是可以识别文件链接。
stat的结构:
struct stat {dev_t st_dev; /* ID of device containing file */ino_t st_ino; /* Inode number */mode_t st_mode; /* File type and mode */nlink_t st_nlink; /* Number of hard links */uid_t st_uid; /* User ID of owner */gid_t st_gid; /* Group ID of owner */dev_t st_rdev; /* Device ID (if special file) */off_t st_size; /* Total size, in bytes */blksize_t st_blksize; /* Block size for filesystem I/O */blkcnt_t st_blocks; /* Number of 512B blocks allocated *//* Since Linux 2.6, the kernel supports nanosecondprecision for the following timestamp fields.For the details before Linux 2.6, see NOTES. */struct timespec st_atim; /* Time of last access */struct timespec st_mtim; /* Time of last modification */struct timespec st_ctim; /* Time of last status change */#define st_atime st_atim.tv_sec /* Backward compatibility */#define st_mtime st_mtim.tv_sec#define st_ctime st_ctim.tv_sec};
简单实例:
#include <stdio.h>
#include <sys/stat.h>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/sysmacros.h>int main(int argc, char* argv[]) {struct stat sb;if (argc != 2) {fprintf(stderr, "Usage: %s <pathname>\n", argv[0]);exit(EXIT_FAILURE);}if (stat(argv[1], &sb) == -1) {perror("stat() error\n");exit(EXIT_FAILURE);}printf("ID of containing device: [%lx, %lx]\n",(long)sb.st_dev, (long)sb.st_dev);return 0;
}
Linux获取文件信息相关推荐
- linux生成文件清单,Linux 获取文件名称生成列表 txt - create_filelist
Linux 获取文件名称生成列表 txt - create_filelist 1. find /home/strong/MOTChallenge/MOT16/MOT16/train/MOT16-04/ ...
- linux生成一个list文件,Linux 获取文件名称生成列表 txt - create_filelist
Linux 获取文件名称生成列表 txt - create_filelist 1. find /home/strong/MOTChallenge/MOT16/MOT16/train/MOT16-04/ ...
- 通过 WMI 从 Linux 获取 Windows 信息/尝试运行程序
有一个工具可以通过 WMI 从 Linux 获取 Windows 信息,所以我试了一下. 如果这个和ZABBIX能很好的连接起来,看来可以实现真正的无代理(不是通过SNMP). 安装方法如下 1 2 ...
- C语言下,获取文件信息 http://qimo601.iteye.com/blog/1517413
http://qimo601.iteye.com/blog/1517413 C语言下,获取文件信息 博客分类: C/C++ C语言文件信息文件大小 C语言下,如何获取文件的生成时间,日期和文件大小等 ...
- linux目录为root所有文件,linux获取文件所有目录/文件夹的例子linux操作系统 -电脑资料...
下面我给大家整理了两种比较实用的方法,如我们可以使用dirname来获取文件路径或者使用shell命令来获取路径,希望例子对大家有帮助, 方式一:使用" dirname" 去获得( ...
- 拖放获取文件信息的bat代码
参考:岁月如歌-通过拖曳获取文件信息的bat代码 拖放获取文件信息的bat代码 使用命令行配合7z解压文件时由于每次解压的文件不同,因此搜索了一下拖放识别文件信息的方法,以此方式来减轻工作量 获取文件 ...
- Qt总结之一:遍历文件夹和文件目录,并过滤和获取文件信息、后缀名、前缀名(一)
一.采用递归和QDir实现文件夹下所有文件遍历的方法 #include <QDir> bool FindFile(const QString & path) {QDir dir(p ...
- Qt之HTTP之模仿迅雷——根据URL获取文件信息(上)
一.简述 最近再看Qt实现HTTP下载时,看了一下迅雷下载,发现迅雷做的很好,不论是界面还是下载速度都非常不错,今天看到迅雷9新建下载任务一个神奇效果,复制下载url到输入框,迅雷能够自动解析下载文 ...
- Qt 之 模仿迅雷 根据Url获取文件信息——上
一.简述 最近再看Qt实现HTTP下载时,看了一下迅雷下载,发现迅雷做的很好,不论是界面还是下载速度都非常不错,今天看到迅雷9新建下载任务一个神奇效果,复制下载url到输入框,迅雷能够自动解析下载文件 ...
最新文章
- Office 365系列(7)------ Exchange 2013与Office 365 Hybrid混合部署Step by Step参考
- java静态变量和实例变量的区别6_java静态变量的与实例变量的区别
- 推荐几本Python电子书
- 互联网IP地址的分配
- SQL语言之DQL语言学习(八)多表查询/链接查询 SQL92学习
- 让用户故事真的像故事那样
- 代码段编辑器SnippetEditor 2.1
- 一年赚4.5亿,网红盲盒公司泡泡玛特再战IPO
- Sybase数据库技术,数据库恢复---分享Sybase数据库知识(博客文章索引@51cto)
- 关于Socket踩过的一些坑
- [Zeppelin]Zeppelin安装与初体验
- 安卓一键新机_新机速递:vivo S7,如7而至;更有Nokia携手一键直达登场
- 新能源汽车动力电池(热管理)热流体仿真分析-基于SCDM和STAR-CCM+热仿真分析课程(评论发链接)
- Openstack 经典面试问题和解答
- 逆火效应:该对谁负责?
- linux man shell,Linux Shell man 命令详细介绍
- 学习Python一定要吃透这68个内置函数,强烈建议收藏(文末附本周送书和抽奖)...
- 一张自拍即可实现变老变年轻,带你感受时光流逝之美
- QQ聊天机器人--基于酷Q写的插件
- 设置成功的开源计划办公室(OSPO)的指南