目录
1.Close函数
2.Linux文件权限
3.项目实战
3.1Close 项目实战1
3.2 文件权限项目实战 -Open函数设置权限
1.Close函数
参数说明
在Linux系统库的定义:
int close(int fd)
包含的头文件
#include <unistd.h>
功能就是简单的关闭文件
注:终端输入 man 2 close,查看系统调用函数,可以看到有名字、参数、描述。
2.Linux文件权限
Linux系统中采用三位十进制表示权限,如0755,0644.
7 1+2+4
5 1+4
5 1+4
- ABCD
- A - 0,表示十进制
- B - 用户
- C - 组用户
- D - 其他用户
‐‐‐ ‐> 0 (no excute , nowrite ,no read)
‐‐x ‐> 1 excute, (nowrite, no read)
‐w‐ ‐> 2 write
r‐‐ ‐> 4 read
‐wx ‐> 3 write, excute
r‐x ‐> 5 read, excute
rw‐ ‐> 6 read, write ,
rwx ‐> 7 read, write , excute
3.项目实战
3.1Close 项目实战1
- 输入man 2 close ,查询函数所需要的头文件并复制。
- 写入代码,保存并退出,用gcc编译
- 删除mm文件,并运行代码,代码运行成功。并生成了新的mm。而它的权限发生了变化。
3.2 文件权限项目实战 -Open函数设置权限
- vi demo1.c 创建文件
- 写入程序
- gcc demo1.c -o demo 编译文件。
- ./demo 执行文件,执行成功后,发现自动生成了 file we文件。
- 查看当前目录所有文件的权限。ls -l。
- 权限分析。
- 发现flie的用户权限是:--S。组用户权限:r-x。其他用户权限--T。权限与程序中所给的权限不一致。这是因为该文件是程序所生成的,并没有赋予可读可写的权限。
- 这时候我们加入open函数的第三个参数。加入权限0755。
- 编译文件并产生新的文件信息,新的权限符合程序设置的0755。