Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux head 指令完整用法:顯示檔案開頭 N 行/位元組、排除尾部、管道配合篩選

編輯:關於 Linux

head 專注於檔案開頭內容,常用於快速預覽大檔案、管道篩選前幾筆結果。本文詳細說明參數、負數行數/位元組排除尾部、實戰管道範例與效能特性。

核心參數

參數說明範例
-n N, -N顯示前 N 行 (預設 10)head -n 20 /etc/passwd
-c N顯示前 N 位元組head -c 512 boot.img
-n -N顯示除最後 N 行外的所有內容head -n -5 file.txt
-c -N顯示除最後 N 位元組外的所有內容head -c -100 data.bin
-q, --quiet多檔案不顯示檔名標頭head -q -n 3 *.log
-v, --verbose強制顯示檔名標頭head -v -n 3 file.log

實戰範例

  1. 預覽 CSV/TSV 標題與前幾筆資料
    head -n 5 data.csv
    # 或帶入 csvlook
    head -n 5 data.csv | csvlook
    
  2. 管道取前 10 筆符合條件的記錄
    grep "ERROR" /var/log/app.log | head -n 10
    
  3. 排除檔案尾部固定長度的 footer (如 checksum、watermark)
    head -c -32 firmware.bin > firmware_clean.bin
    
  4. 查看腳本 shebang 與前幾行註解
    head -n 10 /usr/local/bin/my_script.sh
    
  5. 多檔案快速預覽
    head -v -n 3 /var/log/*.log
    

效能特性

  • head 讀取滿足行數/位元組後立即關閉檔案,**不讀取整個檔案**,對超大檔 (GB/TB) 極快。
  • 配合管道時,head -n N 會在收到 N 行後發送 SIGPIPE 終止上游指令,節省資源 (如 find / -type f | head -n 5 只掃描前幾個結果即停止)。

常見搭配

需求指令組合
看檔案中間段落 (第 100~110 行)head -n 110 file | tail -n 10
排除前 5 行與最後 3 行tail -n +6 file | head -n -3
二進位檔案前 4KB 十六進位檢視head -c 4k file.bin | xxd | head -n 20

注意事項

  • 負數參數 (-n -N) 需 GNU coreutils 7.5+ (現代 Linux 皆支援)。
  • head -c N 可能在多位元組字元中間截斷,文本檔建議用 -n。
  • 標準輸入亦可:cmd | head -n 5。

head 輕量高效,是大檔案快速預覽與管道流控的首選工具。

Copyright © Windows教程網 All Rights Reserved