[LINUX] 只保留文件的前面或後面n行
“ Linux下讓程式刪除指定行,使用 sed。 ”
分享完整連結 //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 -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
END
你可能有興趣
check-host 從世界各地檢查你的網站能不能連線?
檢測你的網站能不能暢通?這個網站可讓你知道你的網站是不是「網際網路」還是「區域網路」?
[Smarty4] 出現 modifiers 函式不能用的問題
當我把smarty由3版更新到4.5.1版的時候,出現了Using unregistered function xx in a template這樣的錯誤,該如何解決?
[Docker] docker中要怎麼修改影像的名稱,rename image
透過 build來的image如果沒有指定名稱,事後要怎麼修改影像的名稱?
[Rocky9] 安裝node.js 18, node.js 20
原本的nodejs16在使用 quasar dev時出現錯誤,得升級成18版以上
[SSL] Could not read certificate from server.cer 的錯誤排除
在轉換ssl憑證時,出現無法讀取的錯誤,可是怎麼看憑證都很正常,該怎麼解決?
[Linux] 如何能知道我是什麼時候安裝系統的?
linux想知道什麼時候裝系統的?什麼時候建置的?不必憑記憶。