《linux c編程指南》學習手記4

7.1 文件系統簡介函數

7.1.1 文件spa

文件類型:普通文件、目錄文件、連接文件、設備文件、管道文件索引

文件權限:r w xip

訪問權限:文件全部者、文件全部者同組用戶、其餘用戶it

7.1.2 索引節點pip

7.1.3 文件系統sed

  樹形層次結構系統,文件最終都歸結到根目錄/上select


7.2 基於文件描述符的IO操做權限

7.2.1文件的建立、打開與關閉程序

1 文件的建立 create

2 文件的打開 open

(文件操做不能保證都是成功的,所以文件操做都要進行檢測,若是錯誤要終止程序)

3 文件的關閉 close

7.2.2 文件的讀寫操做  write  read

7.2.3 文件的定位 lseek


7.3 文件的其餘操做

7.3.1 文件屬性的修改

1 修改文件權限

改變文件全部者 chown fchown

  (對文件進行操做時,調用chown使用該文件的路徑名,調用fchown時使用該文件打開時的文件描述符)
  僅root用戶能夠使用

改變文件的訪問權限 chmod fchmod

2 修改文件的其餘屬性

重命名 rename

修改文件長度 truncate  ftruncate

7.3.2 文件的其餘操做

1 dup 和 dup2 複製文件描述符

2 stat、fstat、lstat 

  stat:經過路徑名訪問文件,fstat經過文件描述符訪問文件

  stat訪問一個符號鏈接時,追蹤到鏈接的末端的文件。lstat函數只返回連接自己的信息

3 fsync 將保存在緩衝區內的要寫入文件描述符fd的全部數據刷新到要寫入的文件中

4 flock 上鎖或解鎖

5 fcntl 查看或設置文件的一些相關信息

6 select 處理多個文件描述符的有效手段


7.4 特殊文件的操做

7.4.1 目錄文件的操做

1目錄文件的建立刪除 mkdir    rmdir

2文件的打開關閉   opendir  closedir

3目錄文件的讀取   readdir 讀取一個目錄文件的系統調用

 

7.4.2 連接文件的操做

1 硬連接操做

  建立連接 link (只有root才能建立一個指向目錄文件的新的連接文件)

  移除連接 unlink(將索引節點中的連接計數器減1)

2 符號連接

  建立 symlink

  打開並讀取名字: readlink

 

7.4.3 管道文件的操做

  pipe一般用來與fork\dup2\execve等函數配合使用爲被重定向IO的其餘程序建立管道

 

7.4.4 設備文件

  /dev

相關文章
相關標籤/搜索