tac — 反向輸出文字行(cat 的反轉版)

反轉輸出檔案的行順序(最後一行變第一行)。

語法

tac [選項] [檔案...]

常用選項

選項 說明 範例
-s 分隔符 使用指定分隔符(而非換行符)作為行的邊界 tac -s ";" file.txt
-r 將分隔符視為正規表示式 tac -r -s "\n" file.txt

使用範例

範例 1:反轉檔案行順序

將 numbered.txt 的行從底部輸出到頂部。

$ tac numbered.txt
line 5
line 4
line 3
line 2
line 1
範例 2:查看日誌最新記錄(反轉後取頭)

取得日誌的最後 20 行,並以最新的排在最前面顯示。

$ tac /var/log/syslog | head -20
(最新的 20 筆日誌,最新在最上面)
範例 3:反轉管線輸入

反轉 sort 的排序結果,但比 sort -r 更有彈性(可在排序後才反轉)。

$ sort names.txt | tac
Zara
Yan
Xiao
Alice

延伸閱讀