[精讚] [會員登入]

[LINUX] 只保留文件的前面或後面n行

Linux下讓程式刪除指定行,使用 sed。

此文完整連結 http://n.sfs.tw/m10551

複製連結 [LINUX] 只保留文件的前面或後面n行@精讚
(文章歡迎轉載,請尊重版權註明連結來源)
2019-01-21 17:35:15 By 張○○

我想讓程式自動刪除文件多餘的行,例如只想保留n行,後面的不要或前面不要或是只要中段。

例如讀取前面100行

$ head -n 100 filename

或後面 100行

$ tail -n 100 filename

舉例,我想做的是只留前200行。

$ head -n 200 filename > filename
或是
$ sed -n '0,200p' filename > filename

自己開檔導給自己可不可以?

我發現這是不可以的,會讓檔案內容被清空

想一想為什麼?因為開檔後循序寫入在添加時就會新清空,所以後面就讀不到,全空。

後來發現可以這樣下指令

# sed -i '100d,$d' filename

-i 編輯自己

100d 表示從第100行開始刪
  , 到~
$d 結束,'d'代表刪除

換句話說上面會保留1-99行。

[相關連結]

https://unix.stackexchange.com/questions/209068/how-do-i-delete-the-first-n-lines-and-last-line-of-a-file-using-shell-commands/209090

你可能有興趣

[vi/vim] 移除行尾的空白

vi上要移除行尾的空白的一點小技巧

[WIndows] 程式視窗的上緣跑到螢幕外面怎麼辦

這近不知怎麼搞的,我的EXCEL開啟時他最上面的選單跑到螢幕的外面 所以我也拉不回來,不知怎麼辦?

[PERL] 一個SQL上的錯誤

一個SQL上的觀念錯誤,浪費了我半小時查錯和半小時寫這篇筆記。

線上格式化/最小化你的javascript 程式碼

我想用編輯器來格式化javascript,試了二三套,還是覺得線上的這個最好

[HTML/CSS] PER標籤中要折字換行(PRE中防止容器破壞)

在pre中因為不會自動的換行,如果一行的內容很長,就會把容器撐開,要防止容器被長文字破壞的方法