西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁(yè)西西教程操作系統(tǒng) → Linux平臺(tái)的文件、目錄及操作的函數(shù)

Linux平臺(tái)的文件、目錄及操作的函數(shù)

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來(lái)源:西西整理時(shí)間:2011/5/1 14:36:47字體大。A-A+

作者:西西點(diǎn)擊:133次評(píng)論:2次標(biāo)簽: Linux

  • 類型:電子資料大。768KB語(yǔ)言:中文 評(píng)分:10.0
  • 標(biāo)簽:
立即下載
Linux平臺(tái)的文件,目錄及操作
下面介紹關(guān)于文件和目錄操作的函數(shù)

1.文件類型

stat(),fstat()和lstat()函數(shù)

fstat功能和stat類似,只是不以文件的路徑稱作為標(biāo)識(shí),而是用文件描述符標(biāo)識(shí)目標(biāo)文件,獲得該文件的有關(guān)信息。lstat形式和功能都與stat類似,但是當(dāng)目標(biāo)文件是符號(hào)鏈接文件時(shí),lstat返回該符號(hào)連接的有關(guān)信息。

格式:

#inlcude <sys/stat.h>

#include <unistd.h>

int stat(const chat *name, struct stat *buf);

int fstat(int filedes, struct stat *buf);

int lstat(const char *file, stuct stat *buf);

與此命名文件有關(guān)的信息結(jié)構(gòu)放在buf中。成功則函數(shù)返回0,否則返回-1。

2.文件權(quán)限

(1)access

用來(lái)檢查指定文件的屬性,可以檢查文件愛(ài)你是否可讀,可寫(xiě),可執(zhí)行。

格式:

#include <unistd.h>

int access(const char *file, int mode);

成功返回0,失敗返回-1 。

(3)umask

為 進(jìn)程設(shè)置創(chuàng)建文件的許可掩碼。

格式:

#include <sys/types.h>

#include <sys/stat.h>

mode_t umask(mode_t mode);

返回以前文的文件方式創(chuàng)建屏蔽字。無(wú)錯(cuò)誤返回。

(4)chmod和 fchmod

改變文件的操作權(quán)限

格式:

#include <sys/types.h>

#include <sys/stat.h>

chmod[OPTION]MODE[,MODE...] FILE;

int chmod(const char *path, mode_t mode);

int fchmode(int fileds, mode_t mode);

(5)chown,fchown和lchown

更改文件的用戶ID和組ID。

格式:

#include <sys/types.h>

#include <unistd.h>

int chown(condt char *name, uid_t owner, gid_t group);

int fchown(int filedes, uid_t owner, gid_t group);

int lchown(const char *nam, uid_t owner, gid_t group);

3.文件操作

(1)link,unlink和 remove

link函數(shù)建立指向文件的新目錄項(xiàng)。

unlink函數(shù)刪除目錄項(xiàng)或文件(僅作用于非目錄文件)。

remove函數(shù)和unlink功能相同,只是remove可以刪除目錄文件

格式:

#include <unistd.h>

int link(const char *old, const char *new);

int unlink(const char *old);

#include <stdio.h>

int remove(const char *file);

成功返回0,失敗返回-1 。

(2)rename

此函數(shù)可以實(shí)現(xiàn)對(duì)一個(gè)文件或目錄的更名。

格式:

#include <stdio.h>

int rename(const char *old, const char *new);

(3)symlink

創(chuàng)建一個(gè)符號(hào)連接。

#include <unistd.h>

int symlink(const char *realpath, const char *charpath);

(4)realink

打開(kāi)符號(hào)連接文件本身以讀取連接中的文件名。

格式:

#include <unistd.h>

int reslink(const char *file, const char *buf, int bufsize);

4.文件時(shí)間

utime和utimes

格式:

#include <sys.types.h>

#inlcude <utime.h>

int utime(const char *filename, const struct utimebuf *time);

int utimes(char *filename, struct timeval *tvp);

5.目錄操作

(1)mkdir

創(chuàng)建一個(gè)新目錄。

格式:

#include <sys/types.h>
#include <sys/stat.h>

int mkdir(const char *dname, mode_t mode);

(2)rmdir

刪除一個(gè)目錄。

格式:

#include <unistd.h>

int rmdir(const char *dname);

(3)chdir和fchdir

這兩個(gè)函數(shù)的任務(wù)是搜索相對(duì)路徑名的起點(diǎn)并可以更改當(dāng)前工作目錄。它們的區(qū)別是chdir用路徑名來(lái)標(biāo)識(shí)目標(biāo)目錄,而fchdir用文件描述符來(lái)標(biāo)識(shí)目標(biāo)目錄。

格式:

#include <unistd.h>

int chdir(const char *path);

int fchdir(int filedes);

(4)gecwd

獲取當(dāng)前工作目錄的絕對(duì)路徑名。

格式:

#include <unistd.h>

char *getcwd(char *buf, size_t bufsize);

6.特殊設(shè)備文件

sync和fsync

清空文件系統(tǒng)緩沖區(qū)

格式:

#include <unistd.h>

void sync(void);

int fsync(int filedes); 

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過(guò)難過(guò)
    • 5 囧
    • 3 圍觀圍觀
    • 2 無(wú)聊無(wú)聊

    熱門(mén)評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(2)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)