• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Linux 印出檔案特定行內容教學與範例

介紹如何在 Linux 使用 head、tail、sed 或 awk 指令,擷取檔案中的特定幾行內容。

產生測試用檔案

使用以下 Bash 指令稿產生 100 行的測試檔案:

#!/bin/bash
for i in {1..100}; do
  echo "Line $i"
done > file.txt

產生的檔案內容會像這樣:

# 顯示檔案內容的前三行
head -n 3 file.txt
Line 1
Line 2
Line 3

印出特定行內容

在 Linux 命令列中,若要印出檔案中特定行的內容,有好幾種方式可以使用,最基本的就是將 head 與 tail 搭配使用,例如顯示檔案內容的第 25 行:

# 顯示檔案內容的第 25 行
head -25 file.txt | tail +25
Line 25

第二種方式是使用 sed 指令:

# 顯示檔案內容的第 25 行
sed -n '25p' file.txt
Line 25

第三種方式是使用 awk 指令:

# 顯示檔案內容的第 25 行
awk 'NR==25' file.txt
Line 25

亦可使用 perl 來處理:

# 顯示檔案內容的第 25 行
perl -ne 'print if $.==25' file.txt
Line 25

印出特定行範圍內容

若要顯示特定的行範圍,也可以用類似的方式處理。

將 head 與 tail 搭配使用,顯示檔案內容的第 20 行到第 25 行:

# 顯示檔案內容的第 23 行到第 25 行
head -25 file.txt | tail +23
Line 23
Line 24
Line 25

使用 sed 指令顯示檔案內容的第 23 行到第 25 行:

# 顯示檔案內容的第 23 行到第 25 行
sed -n '23,25p' file.txt
Line 23
Line 24
Line 25

使用 awk 指令顯示檔案內容的第 23 行到第 25 行:

# 顯示檔案內容的第 23 行到第 25 行
awk 'NR>=23 && NR <=25' file.txt
Line 23
Line 24
Line 25

使用 perl 顯示檔案內容的第 23 行到第 25 行:

# 顯示檔案內容的第 23 行到第 25 行
perl -ne 'print if $.>=23 and $.<=25' file.txt
Line 23
Line 24
Line 25

參考資料:Linux Handbook

分類:Linux

主要資訊欄

搜尋

近期文章

  • Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤
  • Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例
  • Linux 網路設定 ip 指令用法教學與範例
  • Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例
  • Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例
  • Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例
  • Linux 以 Cryptsetup 與 LUKS 加密磁碟教學與範例
  • Linux 使用 age 簡潔的加密、解密工具使用教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide