13161216443

您所在位置: 首頁> 學習課程> Linux培訓 | Linux下如何拆分大的日志文件?

Linux培訓 | Linux下如何拆分大的日志文件?

發布百知教育 來源:學習課程 2019-10-18

前言


沒設置好日志大小最大值,導致日志文件過大,普通編輯器根本沒法打開或者特別卡,怎么辦?拆分唄。


如何拆分


split命令上場。


按照行數拆分


假設文件test.txt有n多行,每2行拆分為一個文件,使用-l參數即可:


$ split -l 2 test.txt 
$ ls -al
-rw-r--r-- 1 root root 32 Aug 31 16:55 test.txt
-rw-r--r-- 1 root root 20 Aug 31 16:55 xaa
-rw-r--r-- 1 root root 12 Aug 31 16:55 xab

仔細一看,拆分后的文件名難以描述啊。

能不能好好命名一下呢?


規范命名

使用-d參數可以用數字作為新的文件后綴:

$ split -l 2 test.txt -d
$ ls
test.txt  x00  x01  x02

還可以用-a指定后綴數字的長度(默認是2):

$ split -l 2 test.txt -d -a 4
$ ls
test.txt  x0000  x0001  x0002

不過開頭的x實在看不順序,我們還可以指定前綴,比如指定前綴為test:

$ split -l 2 test.txt -d -a 4 test
$ ls
test0000  test0001  test0002  test.txt

而且你還可以從指定數字下標開始,使用--numeric-suffixes,例如從0004開始:

$ split --numeric-suffixes=4 test.txt -a 4 -l 2
test.txt  x0004  x0005

按照大小拆分

使用-b參數來按照大小來拆分,單位為字節:

split -b 10 test.txt

當然還可以使用k(千字節),m(兆)。即:

split -b 10k test.txt

分割成指定數量文件

使用-n參數即可,比如無論大小,行數,拆分為3個文件:

$ split -n 4 test.txt
$ test.txt  xaa  xab  xac  xad

其他方法

當然了,打的日志文件可以不用那種創建臨時文件打開的方式(如vim打開一個文件會創建一個臨時文件),而可以使用類似more,tail等命令查看部分內容。


linux培訓班:http://www.akpsimsu.com/linux2019



上一篇:北京百知教育協同育人基地校企共建實驗室

下一篇:應屆生去公司找個Java程序員的職位需要什么技能?

相關推薦

www.akpsimsu.com

有位老師想和您聊一聊

關閉

立即申請