檔案操作之3 掃瞄目錄

2021-06-21 22:20:38 字數 1335 閱讀 6638

用到的系統呼叫函式如下:

lstat,opendir、readdir、chdir函式

1. lstat函式

函式原型:

#include

#include

#include

int  lstat(const char *path,struct stat *buf);

st_mode      檔案許可權和檔案型別資訊

st_ino           與該檔案關聯的inode

st_dev           儲存檔案的裝置

st_uid            檔案屬主的uid號

st_gid            檔案屬主的gid號

......

stat結構中返回的st_mode 標誌以及與之關聯的巨集,他們定義在sys/stat.h中。

2. opendir函式

函式原型:

#include

#include

dir *opendir(const char *name);

opendir函式的作用是開啟乙個目錄並建立乙個目錄流。如果喲成功,它返回乙個指向dir結構的指標,該指標用於讀取目錄資料項。

3. readdir 函式

函式原型:

#include

#include

struct dirent *readdir(dir *dirp);

dirent結構中包含的目錄項內容以下部分:

ino_t d_ino: 檔案的inode節點號。

char d_name:檔案的名字。

測試函式:

#include

#include

#include

#include

void printdir(char *dir,int depth)

chdir(dir);

while((entry = readdir(dp))!=null)

else printf("%*s%s\n",depth,"",entry->d_name);

}chdir("..");

closedir(dp);

}int main()

函式結果:

zhangxm@zhangxm:~/c_programmer/dir_printdir$ ./printdir

directory scan of /home:

dir_read/

read.c

read

read.txt

dir_chown/

unlink.c

rmdir

.......

Linux 檔案處理 之掃瞄目錄 DIR

3.8掃瞄目錄 linux 系統上乙個常見問題就是對目錄進行掃瞄,也就是確定乙個特定目錄下存放的檔案。在 shell 程式設計中,這很容易做到 只需讓 shell 做一次表示式的萬用字元擴充套件。過去,unix 作業系統的各種變體都允許使用者通過程式設計訪問底層檔案系統結構。我們仍然可以把目錄當作乙...

python glob模組掃瞄檔案目錄

1 glob模組是最簡單的模組之一,內容非常少。用它可以查詢符合特定規則的檔案路徑名。跟使用windows下的檔案搜尋差不多。查詢檔案只用到三個匹配符 匹配0個或多個字元 匹配單個字元 匹配指定範圍內的字元,如 0 9 匹配數字。glob.glob pathname 返回所有匹配的檔案路徑列表。它只...

檔案操作之遍歷目錄

原文 python天天進步 檔案操作之遍歷目錄 python的os模組,包含了普遍的作業系統功能,這裡主要學習與路徑相關的函式 os.listdir dirname 列出dirname下的目錄和檔案 os.getcwd 獲得當前工作目錄 os.curdir 返回當前目錄 os.chdir dirna...