4 #include <sys/stat.h>
5 #include <sys/types.h>
6 #include <fcntl.h>
7 #include <head.h>
8 int main(int argc, const char *argv[])
9 {
10 int fd=open("./stat.c",O_RDONLY);
11 if(fd<0)
12 {
13 ERR_MSG("open");
14 return -1;
15 }
16 char buf[128]="";
17 ssize_t res=0;
18 int count=0;
19 while(1)
20 {
21 res=read(fd,buf,sizeof(buf));
22 if(0==res)
23 {
24 break;
25 }
26 count++;
27 printf("%d",count);
28 }
29 return 0;
30 }
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <head.h>
void get_filePermission(mode_t m)
{
for(int i=0;i<3;i++)
{
if((m & (0400>>i)) != 0)
putchar('r');
else
putchar('-');
if((m & 0400>>i) != 0)
putchar('w');
else
putchar('-');
if((m & 0400>>i) != 0)
putchar('x');
else
putchar('-');
puts(" ");
}
}
int main(int argc, const char *argv[])
{
struct stat buf;
if(stat("./time.txt",&buf)<0)
{
perror("stat");
return -1;
}
printf("mode: 0%o\n",buf.st_mode);
get_filePermission(buf.st_mode);
return 0;
}