1. 程式人生 > >訪問檔案資訊 fstat和stat用法

訪問檔案資訊 fstat和stat用法

#include <unistd.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>


int main(int argc, char* argv[]){

	//fd -  fstat
	int fd = open("./draft1.txt", O_WRONLY);
	struct stat s1;
	fstat(fd, &s1);
	printf("s1.st_size = %d \n", s1.st_size);
	close(fd);

	//path - stat
	struct stat s2;
	const char* file_path = "./draft2.txt";
	stat(file_path, &s2);
	printf("s2.st_atime = %d, s2.st_ctime = %d,  s2.st_uid = %d, s2.st_size = %d \n",
			 s2.st_atime, s2.st_ctime, s2.st_uid, s2.st_size);

	int modes = s2.st_mode;
	if(!S_ISDIR(modes) && (modes& S_IRWXU) != S_IXUSR){
		printf("NOT ixusr\n");
	}
	
	exit(0);
}