/* * Linux文件属性结构体信息 * struct stat * { * dev_t st_dev;//设备 * ino_t st_ino;//结点 * mode_t st_mode;//模式 * nlink_t st_nlink;//硬连接 * uid_t st_uid;//用户ID * gid_t st_gid;//组ID * dev_t st_rdev;//设备类型 * off_t st_off;//文件字节数 * unsigned long st_blksize;//块大小 * unsigned long st_blocks;//块数 * time_t st_atime;//最后一次访问时间 * time_t st_mtime;//最后一次修改时间 * time_t st_ctime;//最后一次属性改变时间 * } * 可通过stat或fstat函数获得文件的其他属性 * stat函数用来判断没有打开的文件,而fstat函数用来判断打开的文件。 * */ #include <unistd.h> #include <sys/stat.h> int main(void) { struct stat buf; stat("/etc/passwd",&buf); /* * stat函数 * 取得文件的属性 * sys/stat.h,unistd.h * int stat(const char *file_name,struct stat*buf); * 将参数file_name所指的文件状态复制到参数buf所指的结构中 * 成功返回0,失败返回-1,错误存储于errno */ printf("/etc/passwd文件的大小是:%d/n",buf.st_size); printf("/etc/passwd文件的最后一次修改时间是:%d/n",buf.st_ctim); return 0; }