#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int stat(const char *pathname, struct stat *buf); //获取文件状态
结构体stat的定义为:
struct stat {
dev_t st_dev; //如果是设备,返回设备表述符,否则为0.
ino_t st_ino; // i节点号。
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_size; //文件大小,字节表示
blksize_t st_blksize; //块大小
blkcnt_t st_blocks; //块数
time_t st_atime; //最后访问时间 time_t存放的是距离1970.1.1的秒数。
time_t st_mtime; //最后修改时间
time_t st_ctime; //最后权限修改时间
};
正常人类能看懂的时间:字符串时间。
格林威治时间、字符串时间、
#include <time.h>
char * ctime(); 字符串时间?
接口:拿到uid等。
getpwuid()
struct passwd{
char *pw_name;
char *pw_
}
getgrgid() 通过gid拿到组名。
格林威志时间:
struct tm{
int tm_sec;
int tm_....
}
atoi() 字符串转换成数字。
进行位操作,自己写或者调用接口。
使用循环和移位 判断后面9位。