首頁 > 檔案與目錄管理 > stat

stat:以自定義格式輸出文件資訊

`stat` 命令用於顯示文件或文件系統的詳細狀態資訊。特別是,使用 `-c`(或 `--format`)選項可以讓您以指定的格式提取文件大小、權限、所有者、時間資訊等,這在編寫腳本或報告時非常有用。

概述

`stat` 命令顯示文件的 inode 資訊(元數據)。`-c` 選項允許您以自定義格式輸出此資訊,使其適合提取特定屬性或與其他命令組合使用。

主要特點

  • 查詢文件和文件系統的詳細元數據
  • 支援通過 `-c` 選項進行自定義輸出格式
  • 對腳本和自動化任務很有用
  • 存取各種文件屬性(大小、權限、所有者、時間等)

主要選項

與 `stat` 命令的核心 `-c` 選項一起使用的主要格式指定符。

格式指定選項

生成的命令:

請試著組合命令。

這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。

`stat` 執行命令。

請將上述選項組合在一起,與 AI 一同虛擬執行命令。

使用範例

使用 `stat -c` 選項以不同格式輸出文件資訊的範例。

輸出文件名和大小

stat -c '%n %s' my_file.txt

以空格分隔輸出指定文件的名稱和大小。

輸出文件類型和權限

stat -c '%F %A' my_script.sh

輸出文件的類型和人類可讀的權限格式。

輸出所有者、組和最後修改時間

stat -c 'Owner: %U, Group: %G, Modified: %y' my_document.pdf

以特定字串輸出文件的所有者名稱、組名稱和最後修改時間。

檢查符號鏈接目標

stat -c '%N' my_symlink

對於符號鏈接,輸出包含鏈接到的原始文件路徑。

輸出當前目錄中所有文件/目錄的名稱和大小

stat -c '%n %s' *

使用萬用字元輸出當前目錄中所有項目的名稱和大小。

提示與注意事項

有效使用 `stat -c` 的提示和注意事項。

使用引號

如果 FORMAT 字串包含空格或特殊字元,應將其用單引號(')或雙引號(")括起來,以防止 shell 將其解釋為單獨的參數。

  • 單引號('):適用於防止變數擴展並原樣傳遞字串。
  • 雙引號("):適用於在允許變數擴展時將字串括起來。

時間格式

時間相關的指定符(%x、%y、%z)預設以人類可讀的格式輸出。若要獲取以秒為單位的時間戳,請使用 `%X`、`%Y`、`%Z`。

與 find 命令組合使用

find . -maxdepth 1 -type f -exec stat -c '%n %s' {} \;

可以與 `find` 命令的 `-exec` 選項組合使用,對滿足特定條件的文件執行 `stat -c`。

作業系統差異

某些格式指定符可能因作業系統或 `stat` 版本而異或不受支援。例如,`%w`(創建時間)指定符在 Linux 上通常不受支援,僅在 macOS/BSD 上可用。

  • Linux: 通常使用 `coreutils` 套件中的 `stat` 版本。
  • macOS/BSD: 某些格式指定符(例如 `%w`)的行為可能有所不同。

相同類別命令