unix linux程式設計實踐教程讀後感(2)

2021-06-22 15:34:30 字數 614 閱讀 4219

從最開始的who命令,然後cp,ls, pwd等等,都是根據這是什麼?能幹什麼?怎麼實現的?

由這三個問題來驅動程式設計學習。這三個命令其實也是大同小異,拋開具體的業務邏輯功能,其本質就是對相關的檔案(或者是目錄)進行讀取操作,然後獲取其中的相關屬性,在進行相關的邏輯操作。

大致的過程還是梳理下。

首先是開啟相關的檔案(或者目錄)

int open_file= open(char *filename, int mode_t);

dir *dir_ptr = opendir(char * filename);

然後是讀取檔案(或者目錄)strcut  dirent *direnpt = readdir( dir *dir_ptr);

ssize_t read( int open_file); 比如

得到目錄名:direnpt->d_name

得到目錄的i-node:direnpt->d_ino

獲取檔案的相關屬性

stat(char *filename, struct stat &info);

在相應的函式裡面呼叫stat(),比如要得到i-node值,return info.st_ino

總結起來差不多就是這些型別吧

Unix Linux程式設計實踐教程 pwd

created by eddie on 2020 3 16.include include include include include include include ino t get inode char fname return info.st ino void inum to name ...

《Unix Linux程式設計實踐教學》筆記

ctrl alt t 開啟命令列終端 chapter 1概述 目錄操作 1 ls 列出目錄內容 eg ls 列出當前目錄內容 ls etc 列出 etc目錄裡面所包含的檔案和子目錄 2 cd 改變當前目錄 剛登入系統時,當前目錄是自己的主目錄 eg cd bin 轉到 bin目錄下 cd.轉到上一層...

Unix Linux 程式設計實踐教程第四章習題

tips 答案僅供參考,不保證正確 4 1 這個硬體位置一般稱作chs位址,既磁頭數 heads 柱面數 cylinders 扇區數 sectors 而在系統中描述資料所在的區塊稱作lba 邏輯區塊位址 這種定址方式把硬碟看成乙個大的陣列,每乙個資料塊有乙個編號。兩個位址進行轉換時要注意 由於系統在...