国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

解析linux 文件和目錄操作的相關函數

2024-08-28 00:01:42
字體:
來源:轉載
供稿:網友

struct stat
{
mode_t    st_mode;    文件類型,文件權限
ino_t     st_ino;        i節點號
dev_t    st_dev;       
dev_t    st_rdev;    設備文件序號
nlink_t    st_nlink;    鏈接
uid_t    st_uid;
gid_t     st_gid;        用戶ID
off_t    st_size;    文件大小,此字段只對普通文件、目錄文件和符號連接有意義。
time_t    st_atime;    最后存取時間
time_t    st_mtime;    文件內容的最后修改時間
time_t    st_ctime;    文件狀態的最后修改時間
long    st_blksize;   
long     st_blocks;
};

1,stat函數取得文件信息。
#include <sys/types.h>
#include <sys/stat.h>
int stat(const char *pathname, struct stat *buf);
int fstat (int fd,struct stat *buf);
int lstat(const char *pathname, struct stat *buf);

lstat函數類似于stat,但是當命名的文件是一個符號連接時,lstat返回該符號連接的有關信息,而不是由該符號連接引用的文件的信息

2,access函數判斷文件權限
#include<unistd.h>
int access (const char *name, int mode) ;
返回:若成功則為 0,若出錯則為- 1
access函數的mode常數,取自 <unistd.h>
mode                 說   明
R_OK                  測試讀許可權
W_OK                 測試寫許可權
X_OK                測試執行許可權
F_OK                測試文件是否存在

3,umask函數設置文件創建屏蔽字
#include <sys/types.h>
#include <sys/stat.h>
mode_t umask(mode_t task) ;
返回:以前的文件方式創建屏蔽字

4,chmod函數用于修改文件的權限
#include <sys/types.h>
#include <sys/stat.h>
int chmod(const char *pathname, mode_t mode);
int fchmod(int fd, mode_t mode);
兩個函數返回:若成功則為 0,若出錯則為- 1


5,chown函數可用于更改文件的用戶 ID和組ID。
#include <sys/types.h>
#include <unistd.h>
int chown(const char *pathname,uid_t owner,gid_t group);
int fchown(int fd, uid_t owner, gid_t group);
int lchown(const char *pathname, uid_t owner, gid_t group);
三個函數返回:若成功則為 0,若出錯則為- 1

6,在文件末尾處截短文件可以調用函數 truncate和ftruncate。將一個文件的長度截短為 0是一個特例,用O_TRUNC標志可以做到這一點。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华池县| 循化| 大荔县| 新竹市| 大港区| 陕西省| 西青区| 虎林市| 营口市| 简阳市| 玉龙| 成安县| 广平县| 土默特右旗| 米林县| 托克托县| 长海县| 大同县| 库尔勒市| 庆城县| 吕梁市| 乐至县| 永登县| 泽州县| 盖州市| 建湖县| 永兴县| 会宁县| 福州市| 临桂县| 彭阳县| 惠安县| 茶陵县| 祁东县| 张家港市| 卫辉市| 凤庆县| 永丰县| 洛隆县| 永泰县| 濮阳市|