stat命令的實現

  • 2021 年 11 月 1 日
  • 筆記

任務詳情

  • 學習使用stat(1),並用C語言實現
  1. 提交學習stat(1)的截圖
  2. man -k ,grep -r的使用
  3. 偽程式碼
  4. 產品程式碼 mystate.c,提交碼雲鏈接
  5. 測試程式碼,mystat 與stat(1)對比,提交截圖

實驗過程

一、學習stat命令

stat命令用於顯示文件的狀態資訊。stat命令的輸出資訊比ls命令的輸出資訊要更詳細。

語法

stat(選項)(參數)

選項

-L:支援符號連接;
-f:顯示文件系統狀態而非文件狀態;
-t:以簡潔方式輸出資訊;
–help:顯示指令的幫助資訊;
–version:顯示指令的版本資訊。

參數

文件:指定要顯示資訊的普通文件或者文件系統對應的設備文件名。
查看文件或目錄的諸如atime,mtime,ctime等資訊即可使用stat命令,也可使用ls命令,但相比而言,stat還可以看到設備號,環境等資訊。

stat使用實例

二、man -k ,grep -r的使用

使用 man -k stat | grep 2 查找stat相關函數。

使用命令man 2 statx查看學習。

關於stat的說明:

三、偽程式碼

判斷輸入中是否包含文件參數,如果有則繼續,沒有則提示用戶輸入錯誤
聲明結構體,調用函數stat()
列印輸出節點ino、
文件類型mode、
文件的連接數nlink
用戶ID uid和組ID gid、
塊大小blksize、
位元組數size、
塊數目blocks、
三個時間atime、mtime和ctime

四、產品程式碼 mystate.c,提交碼雲鏈接

碼雲鏈接

五、測試程式碼,mystat 與stat(1)對比,提交截圖

如圖所示: