Linux服務(wù)器編程之utime()函數(shù)修改文件存取時(shí)間
C語(yǔ)言u(píng)time()函數(shù):修改文件的存取時(shí)間和更改時(shí)間
頭文件:
#include <sys/types.h> #include <utime.h>
定義函數(shù):
int utime(const char * filename, struct utimbuf * buf);
函數(shù)說(shuō)明:utime()用來(lái)修改參數(shù)filename 文件所屬的inode 存取時(shí)間。結(jié)構(gòu)utimbuf 定義如下:
struct utimbuf { time_t actime; time_t modtime; };
返回值:如果參數(shù)buf 為空指針(NULL), 則該文件的存取時(shí)間和更改時(shí)間全部會(huì)設(shè)為目前時(shí)間.。執(zhí)行成功則返回0,失敗返回-1,錯(cuò)誤代碼存于errno。
錯(cuò)誤代碼:
1、EACCESS 存取文件時(shí)被拒絕, 權(quán)限不足。
2、ENOENT 指定的文件不存在。
C語(yǔ)言u(píng)times()函數(shù):修改文件的存取時(shí)間和更改時(shí)間
頭文件:
#include <sys/types.h> #include <utime.h>
定義函數(shù):
int utimes(char * filename, struct timeval *tvp);
函數(shù)說(shuō)明:utimes()用來(lái)修改參數(shù)filename 文件所屬的inode 存取時(shí)間和修改時(shí)間。結(jié)構(gòu)timeval 定義如下:
struct timeval { long tv_sec; long tv_usec; //微妙 };
返回值:參數(shù) tvp 指向兩個(gè)timeval 結(jié)構(gòu)空間, 和utime ()使用的utimebuf 結(jié)構(gòu)比較, tvp[0].tc_sec則為utimbuf.actime, tvp[1].tv_sec 為utimbuf.modtime. 執(zhí)行成功則返回0. 失敗返回-1, 錯(cuò)誤代
碼存于errno.
錯(cuò)誤代碼:
1、EACCESS 存取文件時(shí)被拒絕, 權(quán)限不足。
2、ENOENT 指定的文件不存在。
相關(guān)文章
Linux 使用rpm方式安裝最新mysql(5.7.16)步驟及常見(jiàn)問(wèn)題解決方法
前幾天在阿里云買了個(gè)服務(wù)器 ,準(zhǔn)備自己玩玩,現(xiàn)將最新版mysql(5.7.16)安裝步驟,以及遇到問(wèn)題及解決過(guò)程分享,需要的朋友參考下吧2017-01-01Linux C中庫(kù)函數(shù)與系統(tǒng)調(diào)用的區(qū)別詳細(xì)解析
以下是對(duì)Linux下C中庫(kù)函數(shù)和系統(tǒng)調(diào)用的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下2013-08-08