Linux 指令速查表提供 13 個 GNU Coreutils 範本,可用於批次檢查檔案,但不會開啟終端機或執行指令。
若要進行批次作業,這份速查表是一份可供搜尋的參考資料,而非批次執行工具。它可協助你一次選擇一個審慎的指令,用於位置、檔案與目錄操作、文字預覽、行數計算、排序、相鄰重複項目檢查,以及磁碟用量。複製文字是唯一的副作用;此頁面不會讀取檔案系統、展開預留位置符號,或上傳儲存庫資料。
這份參考資料的範圍刻意比一般指令百科更為有限。其 13 個資料列使用唯一識別碼與經過檢查的指令字串,其中 8 個範本會與 GNU Coreutils 手冊核對,並以 POSIX 公用工具文件進行獨立交叉查核。這讓它適合用於重複查詢,但不代表你可以據此操作陌生的伺服器。

參考資料中的 13 個指令
可用指令涵蓋檔案審查工作流程的幾個部分。各自的適用範圍不同,因此表格會同時指出預定用途,以及執行前需要記住的主要限制。
| 指令 | 批次審查角色 | 重要限制 |
|---|---|---|
| pwd | 確認目前工作目錄。 | 相對路徑取決於此指令所回報的位置。 |
| ls | 在寫入或移動資料前檢查目錄內容。 | 請確認確切名稱,不要假設每個可見項目都是預定目標。 |
| mkdir -p | 建立目錄及任何缺少的父目錄。 | 目錄已存在時通常不會發出警告,但無法保證擁有者、權限、掛載可用性或路徑穩定性。 |
| cp -i | 將來源複製到目的地,並在覆寫前提示。 | 此提示是安全防護措施,而非交易或備份。 |
| mv -i | 將來源移動到目的地,並在覆寫前提示。 | 解析目的地仍是操作人員的責任;此提示並不提供復原功能。 |
| cat | 將檔案的完整內容寫入標準輸出。 | 大型或二進位輸入可能會使終端機不堪負荷。 |
| head | 預覽文字檔案的開頭。 | 速查表的範本顯示 20 行,但分隔符號與編碼仍會影響結果。 |
| tail | 預覽文字檔案的結尾。 | 速查表的範本顯示 20 行,並具有相同的分隔符號與編碼考量。 |
| wc -l | 計算檔案中的換行字元數。 | 結果不一定等同於人員定義的記錄數。 |
| sort | 使用獨立的已排序檔案預留位置符號產生排序後的輸出。 | 除非另有設定,排序會依據目前的地區設定。 |
| uniq | 計算或顯示相鄰的重複項目。 | 除非輸入已排序,否則不會計算所有全域唯一的行。 |
| df -h | 以人類可讀的單位摘要說明已掛載檔案系統的空間。 | 檔案系統總量無法指出是哪個確切目錄正在占用空間。 |
| du -sh | 估算歸屬於所選路徑的區塊。 | 此估算可能與 df 不同,因為這些工具會考量不同的檔案系統狀況。 |
安全審查一批檔案
- 定義候選集合。在開啟指令範本之前,記錄涉及的確切檔案或目錄。不要假設萬用字元、環境變數、符號連結或縮寫路徑能夠指出預定的集合。
- 每次只搜尋一項用途。在速查表中輸入指令、類別、語法詞彙或工作。像「disk」、「first lines」、「counting」或「sorting」等搜尋可協助縮小可用資料列的範圍,而不必嘗試執行批次作業。
- 閱讀完整說明。替換每個尖括號預留位置符號,包括 <file>、<path>、<source>、<destination>、<directory> 和 <sorted-file>。當空白字元或 shell 中繼字元需要時,請移除括號並為路徑加上引號。當公用工具支援時,請在以連字號開頭的檔案名稱之前使用 --。
- 確認執行環境。檢查工作目錄、目標路徑、可執行檔來源與本機文件。寫入或移動之前,使用 pwd 驗證位置,並使用 ls 檢查相關目錄。在假設其他實作具有相同行為之前,請先查看本機 man 頁與指令說明。
- 複製並執行一個經過審查的範本。只使用該項操作所需的權限。變更資料之前先備份重要資料,並讓機密資訊遠離指令、shell 歷程記錄、檔案名稱與螢幕截圖。對於 GNU cp 和 mv,所顯示的 -i 選項會在覆寫現有目的地之前提示。
- 驗證觀察到的結果與結束狀態。確認輸出符合預定的檔案、位置、數量或磁碟範圍。將 wc -l 解讀為換行字元數,並確認量測值是由 df 或 du 提供,且符合你要評估的項目。
- 驗證後才重複操作。使用相同的檢查方式移至下一個目標。這種分階段方式才是此處所指的批次使用:重複、可觀察的指令,而非無人值守的指令碼或 shell 管線。
分階段處理大量文字集合
這份速查表刻意省略 shell 管線,因此無法將大型批次視為單一自動鏈。將檢查、轉換與驗證步驟分開,可讓每個結果都清楚可見。
- 顯示前先抽樣。使用 head 與 tail 範本檢查檔案的開頭與結尾。只有在已知檔案大小與內容類型時才使用 cat,因為其標準輸出行為可能會使終端機不堪負荷。
- 計算已定義的單位。wc -l 的結果會計算換行字元。當檔案使用其他記錄分隔符號、缺少結尾換行,或包含會由一行涵蓋的內容時,此結果可能會與可見項目數不同。
- 排序至獨立結果。替換所顯示 sort 範本中的檔案與已排序檔案預留位置符號。保留原始檔案、檢查轉換後輸出的樣本,並在結果經過審查前避免取代重要資料。
- 對有序輸入套用 uniq。uniq 範本刻意與已排序檔案結果搭配使用,因為它只能辨識相鄰的重複項目。判定記錄是否相等時,依照目前地區設定進行排序也很重要。
隨著集合擴大,這些限制的重要性也會提升。語法有效的指令仍可能讀取錯誤路徑,萬用字元可能展開為比預期更多的檔案,而符號連結也可能解析到與其顯示名稱不同的位置。
區分檔案系統空間與路徑用量
磁碟調查需要兩份不同的報告,因為 df 與 du 測量的範圍不同。任一數值本身都無法指出安全的刪除項目。
| 報告 | 涵蓋範圍 | 可協助回答的問題 |
|---|---|---|
| df -h | 已掛載的檔案系統,以人類可讀的單位摘要說明。 | 哪個已掛載的檔案系統即將耗盡可用空間? |
| du -sh <path> | 歸屬於所選路徑的區塊,以估算值回報。 | 這個特定目錄或檔案被歸為多少空間用量? |
總量可能不同,原因包括已刪除但仍開啟的檔案、稀疏檔案、硬連結、權限、掛載邊界、快照、保留區塊與檔案系統記錄方式。因此,較大的 du 結果不一定能解釋 df 所顯示的可用空間數值,而較大的 df 總量也無法指出確切的使用者。
若磁碟空間吃緊,請先找出確切的使用者,並在刪除任何內容前保留復原能力。速查表不包含遞迴刪除指令或強制旗標,因此無法替你決定該如何清理。
批次使用與陌生系統的限制
- 涵蓋範圍有所聚焦。這 13 個指令涵蓋位置、檔案、文字預覽、計算、排序、相鄰重複項目與磁碟用量。速查表省略 shell 管線、遞迴刪除、強制旗標、權限提升、終止處理程序、改寫權限、套件管理與網路變更。
- 此頁面不會自動執行。它一次只能複製一個顯示的範本,無法執行該範本、檢查結果或管理一批目標。
- 行為可能因環境而異。互動行為在別名、指令碼、非互動工作階段與非 GNU 系統中可能不同。BSD 或 macOS、BusyBox、容器、精簡映像與較舊發行版本中的選項和輸出也可能不同。
- 批次指令碼需要更嚴格的控制。處理結束狀態、為變數加上引號、設定明確的工作目錄,並選擇具等冪性的操作。確認可執行檔來源、查閱其本機文件,並選擇能夠安全重複的操作。
這份速查表有助於回顧、審慎複製與執行可重複的審查步驟。它不提供備份、交易、自動目標解析功能,也不授權你做出破壞性決策。對於重要資料,請先備份、驗證確切目標、一次執行一個指令,並在繼續之前確認所觀察到的輸出與結束狀態。
若你正在評估選項,如何取得 PC 的 MAC 位址:Windows、macOS、Linux有詳細說明。
若你正在評估選項,MIME 類型查詢速查表:24 種常見媒體類型有詳細說明。