大日誌檔案的拆分split

2021-10-08 21:42:42 字數 2680 閱讀 2085

1、split命令解析

```bash

```bash

用法:split[option]。。。[輸入[字首]]

將固定大小的片輸出到prefixaa,prefixab,…;預設值大小為1000行,預設字首為「x」。沒有輸入,或者當輸入時是-,讀取標準輸入。

長選項的強制引數對於短選項也是必需的。

-a、 --suffix=n 生成長度為n的字尾(預設為2)

--additional-suffix=suffix 在檔名後附加乙個字尾

-b、 --bytes=size 放入每個輸出檔案的大小位元組

-c、 --line-bytes=size 每個輸出檔案最多放入行的大小位元組

-d、 --numeric-suffixes[=from] 使用數字字尾而不是字母字尾;從更改起始值(預設值0)

-e、 --elide-empty-files 不生成帶有「-n」的空輸出檔案

--filter=command 寫入shell命令;檔名為$file

-l、 --lines=number 放入每個輸出檔案的number行

-n、 --number=chunks 生成chunks輸出檔案;參見下面的解釋

-u、 --unbuffered 沒有緩衝立即用「-n r/…」將輸入複製到輸出

--verbose 列印診斷就在每個診斷之前輸出檔案已開啟

--help 顯示此幫助並退出

--version 輸出版本資訊並退出

size是乙個整數和可菜單位(例如:10m是10*1024*1024)。單位是k,m,g,t,p,e,z,y(1024的冪)或kb,mb。。。(1000的冪)。

塊可以是:

n 根據輸入的大小分成n個檔案

k/n 輸出到標準輸出

l/n 拆分為n個檔案而不拆分行

l/k/n 不分行輸出n的第k位到標準輸出

r/n 類似於「l」,但使用迴圈分布

r/k/n 只將n的kth輸出到標準輸出

1、簡單使用

[root@deam a]

# split file.txt #預設按1000拆分成以x開始的多個檔案

[root@deam a]

# ll

total 124

-rw-r--r-- 1 root root 48894 aug 5 20:41 file.txt

-rw-r--r-- 1 root root 3893 aug 5 21:28 xaa

-rw-r--r-- 1 root root 5000 aug 5 21:28 xab

2、指定拆分檔案格式名稱

[root@deam a]

# split file.txt -d -a 2 out #指定輸出檔案格式 out開頭-d 指定數字開始 -a 指定兩位

[root@deam a]

# ll

total 124

-rw-r--r-- 1 root root 48894 aug 5 20:41 file.txt

-rw-r--r-- 1 root root 3893 aug 5 21:32 out00

-rw-r--r-- 1 root root 5000 aug 5 21:32 out01

-rw-r--r-- 1 root root 5000 aug 5 21:32 out02

3、指定拆分行數

[root@deam a]

# split -l 2000 file.txt -d -a 2 out #指定拆分行數 -l 指定 2000行

[root@deam a]

# ll

total 108

-rw-r--r-- 1 root root 48894 aug 5 20:41 file.txt

-rw-r--r-- 1 root root 8893 aug 5 21:35 out00

-rw-r--r-- 1 root root 10000 aug 5 21:35 out01

[root@deam a]

# cat out00|wc -l #統計檔案2000行

2000

4、按指定大小進行拆分

[root@deam a]

# split -b 10k file.txt #每10k拆分成乙個檔案,預設不加單位就是位元組,也可以帶單位比如kb,mb等

[root@deam a]

# ll

total 104

-rw-r--r-- 1 root root 48894 aug 5 20:41 file.txt

-rw-r--r-- 1 root root 10240 aug 5 21:39 xaa

-rw-r--r-- 1 root root 10240 aug 5 21:39 xab

5、合併檔案

[root@deam a]

# cat xa* >> file.txt #將拆分的所有檔案合併成乙個檔案

Linux檔案拆分命令 split

linux split 命令 功能說明 切割檔案。語 法 split help version 行數 b 位元組 c 位元組 l 行數 要切割的檔案 輸出檔名 補充說明 split可將檔案切成較小的檔案,預設每1000行會切成乙個小檔案。參 數 行數 或 l 行數 指定每多少行就要切成乙個小檔案。b...

大檔案拆分命令split

下面的列表中給出了該命令最為常用的幾個命令列選項 選項描述 l指定行數,每多少分隔成乙個檔案,預設值為1000行。b指定位元組數,支援的單位為 k和m c與 b引數類似,但切割時盡量維持每行的完整性 d生成檔案的字尾為數字,如果不指定該選項,預設為字母 root xieqichao ls l rw ...

Linux之split拆分檔案

linux 中split命令可以將乙個大檔案拆分成幾個小檔案。split help version 行數 b 位元組 c 位元組 l 行數 要切割的檔案 輸出檔案字首 注意,在預設情況下將按照每1000行切割成乙個小檔案。wc l data 先檢查一下data有多少行 split l 10000 d...