首页 > 代码库 > C语音实现 Linux touch 命令

C语音实现 Linux touch 命令

linux的touch 命令用来修改文件时间戳,或者新建一个不存在的文件,使用方式如下:
touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名)

基于C语音实现Linux touch 命令的[-acm]选项
注:
touch file1.txt 更新file1.txt的存取和修改时间
touch -a file1.txt 改变file1.txt的读取时间记录
touch -c file1.txt 如果file1.txt不存在,不创建文件
touch -m file1.txt 改变file1.txt的修改时间记录

知识点1:函数 int getopt(int argc,char * const argv[],const char * optstring); 包含在头文件 #include <unistd.h> ,作用:打开和创建文件
int open(constchar*pathname , int flags) ;
int open(constchar*pathname,int flags,mode_t mode);
返回值:成功则返回文件描述符,否则返回-1
参数说明:对于open函数来说,第三个参数仅当创建新文件时(即使用了O_CREAT时)才使用,用于指定文件的访问权限位
pathname 时待打开/创建文件的posix路径名
flags 用于指定文件的打开/创建爱你模式,,

这个参数可由以下常量(定义于fcntl.h)通过逻辑位或逻辑构成.
O_RDONLY只读模式
O_WRONLY只写模式
O_RDWR读写模式

C语音实现 Linux touch 命令