linux下access函數(shù)的用法介紹
Linux內(nèi)核總是根據(jù)進(jìn)程的有效用戶ID和有效組ID來決定一個進(jìn)程是否有權(quán)訪問某個文件。因此,在編寫調(diào)整用戶ID的程序時(shí),在讀寫一個文件之前必須明確檢查其用戶是否原本就有對此文件的訪問權(quán)限。為了實(shí)現(xiàn)這種確認(rèn),需要使用access函數(shù)。
一般形式為;
#include<unistd.h>
int access(const char *pathname,int mode);
其中,pathname是希望檢驗(yàn)的文件名(包含路徑),mode是欲檢查的訪問權(quán)限,如下所示
R_OK 檢驗(yàn)調(diào)用進(jìn)程是否有讀訪問權(quán)限
W_OK 檢驗(yàn)調(diào)用進(jìn)程是否有寫訪問權(quán)限
X_OK 檢驗(yàn)調(diào)用進(jìn)程是否有執(zhí)行訪問權(quán)限
F_OK 檢驗(yàn)規(guī)定的文件是否存在
access檢查用戶對一個文件的權(quán)限情況,根據(jù)mode的值檢查調(diào)用進(jìn)程對文件pathname是否具有讀、寫、或執(zhí)行的權(quán)限。若進(jìn)程實(shí)際用戶具有mode所指出的權(quán)限,access返回0.否則返回-1.
例如:
access("test",06);
access("test",F_OK);
分別用來檢查實(shí)際用戶對test文件是否具有讀寫權(quán)限和test文件是否存在。
- linux shell自定義函數(shù)(定義、返回值、變量作用域)介紹
- Linux里awk中split函數(shù)的用法小結(jié)
- linux下C語言中的mkdir函數(shù)與rmdir函數(shù)
- 解析Linux下的時(shí)間函數(shù):設(shè)置以及獲取時(shí)間的方法
- linux系統(tǒng)上支持php的 iconv()函數(shù)的方法
- 解析linux 文件和目錄操作的相關(guān)函數(shù)
- PHP執(zhí)行l(wèi)inux系統(tǒng)命令的常用函數(shù)使用說明
- Linux Shell腳本系列教程(四):使用函數(shù)添加環(huán)境變量
- linux中常用腳本和函數(shù)分享
- linux下system函數(shù)的簡單分析
相關(guān)文章
C++動態(tài)分配和撤銷內(nèi)存以及結(jié)構(gòu)體類型作為函數(shù)參數(shù)
這篇文章主要介紹了C++動態(tài)分配和撤銷內(nèi)存以及結(jié)構(gòu)體類型作為函數(shù)參數(shù),是C++入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-09-09C++類中的常數(shù)據(jù)成員與靜態(tài)數(shù)據(jù)成員之間的區(qū)別
常數(shù)據(jù)成員是指在類中定義的不能修改其值的一些數(shù)據(jù)成員,類似于我們以前學(xué)過的常變量,雖然是變量,也有自己的地址,但是一經(jīng)賦初值,便不能再被修改2013-10-10C++容器std::vector的swap()函數(shù)使用方式
這篇文章主要介紹了C++容器std::vector的swap()函數(shù)使用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08