学习目标
通过分析 cp 指令,来学习 Linux 编程读写文件操作。
代码实验环境
操作系统:Ubuntu 18.04 LTS
编译器gcc版本:gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
cp指令介绍
cp 指令主要用于复制文件或者目录。
典型用法:
cp [options] source dest
详细的选项参数说明可以查阅相关资料。此处只介绍 cp 指令复制文件的功能。
如果目标文件 dest 不存在,则 cp 会创建这个文件。如果存在,则用 source 文件的内容覆盖 dest 文件。
cp如何复制文件
实现 cp 指令的复制文件功能有两个关键点:首先,需要能够创建一个新文件或者清空已有文件。其次,能够把原文件的内容写入到目标文件中。
- 创建文件
Linux 有一个系统函数 creat() 既能新创建一个文件,也能清空已有文件。其函数原型如下:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int creat(const char *pathname, mode_t mode);
参数 pathname,为文件名
参数 mode,文件访问模式。模式定义如下,
S_IRWXU 00700 文件所有者拥有读、写、执行权限
S_IRUSR 00400 文件所有者拥有读权限
S_IWUSR 00200 文件所有者拥有写权限
S_IXUSR 00100 文件

943

被折叠的 条评论
为什么被折叠?



