Linux系統程式設計 檔案 四

2021-07-15 09:33:08 字數 2112 閱讀 7422

1.建立 mkdir

#include

#include

int mkdir(const

char *pathname, mode_t mode);

執行成功返回0,錯誤返回-1

2.刪除 rmdir

#include

int rmdir(const

char *pathname);

執行成功返回0,錯誤返回-1

rmdir只能刪除指定的空目錄

getcwd

#include

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

執行成功將結果複製到引數buf所指的記憶體空間,或是返回自動配置的字串指標,失敗返回null

引數

getcwd會將當前的工作目錄絕對路徑複製到引數buf所指的記憶體空間,size為buf的空間大小。

chdir
#include

int chdir(const

char *path);

int fchdir(int fd);

執行成功返回0,錯誤返回-1

引數

path:指定的目錄

fd:檔案描述符指定的目錄

利用chdir編寫cd命令

注意:本程式執行以後並沒有像cd命令一樣進行目錄切換,因為chdir只影響呼叫該函式的程序,對其他程序則修改不了,這麼說很抽象,現在去掉程式裡注釋的,再執行一次,我們在裡面建立乙個檔案

可以看到執行完後,仍然在~/code/vacation下,我們切換到/home/yyc/code/下,ls顯示一下,發現在這裡有剛才建立的example.

1.opendir 開啟目錄

#include

#include

dir *opendir(const

char *name);

成功返回dir *形態的目錄流,失敗返回null

2.readdir 讀取目錄項資訊

#include

#include

struct dirent *readdir(dir *dir);

執行成功返回該目錄下乙個檔案的資訊,儲存於dirent結構體,如果有錯誤或已經沒有檔案資訊可供讀取,返回null

引數 struct dirent結構體

3.closedir 關閉目錄

#inclde

#include

int closedir(dir *dir);

執行成功返回0,錯誤返回-1

利用以上函式,獲取目錄資訊

執行程式,得到目錄vacation中的內容

Linux系統程式設計 檔案

linux檔案描述符 系統呼叫 作業系統的五大功能之一就是對檔案管理 在現代作業系統中,要利用大量的程式和資料,由於記憶體容量有限,而且不能長期儲存,於是把這些資料以檔案的形式放在外存中,需要的時候再將它調入記憶體,從此就有了檔案系統。負責管理在外存上的檔案,並把訪問和共享 保護等手段提供給使用者。...

Linux系統程式設計(四)訊號

二 常見訊號 三 訊號處理方式 四 訊號處理過程 五 未決訊號和阻塞訊號 六 訊號集操作函式 訊號在linux中又稱為軟中斷訊號,用來通知程序發生了非同步事件。程序收到訊號必須停止,直到處理完訊號後再執行下一條指令。終端按鍵產生訊號 如 ctrl c ctrl z ctrl 硬體異常產生訊號,如 除...

Linux系統程式設計之檔案程式設計

目錄 一 檔案程式設計 1 linux檔案 2 檔案描述符 file descriptor 3 常用api open write read lseek close 1 open 開啟檔案函式 2 close 關閉檔案 3 write 寫檔案 4 read 讀檔案 5 lseek 游標定位 linux...