【Linux】一步一步学Linux——split命令(59)
00. 目錄
文章目錄
- 00. 目錄
- 01. 命令概述
- 02. 命令格式
- 03. 常用選項
- 04. 參考示例
- 05. 附錄
01. 命令概述
split命令可以將一個大文件分割成很多個小文件,有時需要將文件分割成更小的片段,比如為提高可讀性,生成日志等。
在默認情況下將按照每1000行切割成一個小文件 。
15 分鐘之后,我要去朋友家聚會。我打算從我的臺式機上把一部 700MB 大小的美國大片拷貝出來,帶到朋友家去看,可是我的兩個優(yōu)盤都只有 512MB,這讓我如何是好?
別急,用 10 分鐘趕快來認識一下我們的 split 拆分小能手,一切問題將迎刃而解。當遇到大文件而苦不堪言的時候,split 就會像天使一樣解救我們于水火之中
02. 命令格式
split [OPTION] [INPUT [PREFIX]]03. 常用選項
把 輸入文件 INPUT 按 固定大小 的 文件片 PREFIXaa, PREFIXab,... 輸出; 缺省的 PREFIX 是 `x'. 如果 沒有 指定 INPUT, 或 INPUT是 -, 就從 標準輸入 讀取 數(shù)據(jù).-b, --bytes=SIZE輸出文件 大小 定為 SIZE 字節(jié)-C, --line-bytes=SIZE輸出文件 大小 定為 最多 SIZE 字節(jié) 的 行-l, --lines=NUMBER輸出文件 大小 定為 NUMBER 行-d 使用數(shù)字而不是字母作為切割后的小文件的后綴;-v 顯示詳細的處理信息-NUMBER同 -l NUMBER--verbose在 打開 每一個 輸出文件 之前, 把 診斷信息 送往 標準錯誤--help 顯示 幫助信息, 然后 結束--version顯示 版本信息, 然后 結束指定 SIZE 時 可以 使用 倍乘后綴: b 是 512, k 是 1K, m 是 1Meg.b: 512(blocks)K: 1024(kibiBytes)KB: 1000(kiloBytes)M: 1024*1024(mebiBytes)MB: 1000*1000(megaBytes)G: 1024*1024*1024(gibiBytes)GB: 1000*1000*1000(gibaBytes)T, P, E, Z, Y04. 參考示例
4.1 指定行數(shù)來切割
[deng@localhost test]$ split -l 30 passwd [deng@localhost test]$ ls passwd xaa xab默認文件名是xaa,xbb排序的
4.2 指定文件大小來切割
[deng@localhost test]$ split -b 1b passwd [deng@localhost test]$ ls passwd xaa xab xac xad xae [deng@localhost test]$ ls -lh 總用量 24K -rw-r--r-- 1 deng deng 2.4K 7月 24 15:32 passwd -rw-rw-r-- 1 deng deng 512 7月 24 15:39 xaa -rw-rw-r-- 1 deng deng 512 7月 24 15:39 xab -rw-rw-r-- 1 deng deng 512 7月 24 15:39 xac -rw-rw-r-- 1 deng deng 512 7月 24 15:39 xad -rw-rw-r-- 1 deng deng 328 7月 24 15:39 xae [deng@localhost test]$文件名可以不設置,系統(tǒng)默認新文件以字母x開頭,前面每個文件大小是512個字節(jié)
4.3 合并文件
[deng@localhost test]$ cat xa* > passwd1 [deng@localhost test]$ ls -l passwd passwd1 -rw-r--r-- 1 deng deng 2376 7月 24 15:32 passwd -rw-rw-r-- 1 deng deng 2376 7月 24 15:41 passwd1 [deng@localhost test]$4.4 綜合示例
生成一個大小為100KB的測試文件
[deng@localhost test]$ dd if=/dev/zero bs=100k count=1 of=data.file 記錄了1+0 的讀入 記錄了1+0 的寫出 102400字節(jié)(102 kB)已復制,0.00037411 秒,274 MB/秒 [deng@localhost test]$使用split命令將上面創(chuàng)建的date.file文件分割成大小為10KB的小文件
[deng@localhost test]$ split -b 10k data.file [deng@localhost test]$ ls data.file xaa xab xac xad xae xaf xag xah xai xaj [deng@localhost test]$ ls -l 總用量 220 -rw-rw-r-- 1 deng deng 102400 7月 24 15:42 data.file -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xaa -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xab -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xac -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xad -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xae -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xaf -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xag -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xah -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xai -rw-rw-r-- 1 deng deng 10240 7月 24 15:43 xaj [deng@localhost test]$文件被分割成多個帶有字母的后綴文件,如果想用數(shù)字后綴可使用-d參數(shù),同時可以使用-a length來指定后綴的長度
[deng@localhost test]$ split -b 10k data.file -d -a 3 [deng@localhost test]$ ls data.file x000 x001 x002 x003 x004 x005 x006 x007 x008 x009 [deng@localhost test]$為分割后的文件指定文件名的前綴
文件被分割成多個帶有字母的后綴文件,如果想用數(shù)字后綴可使用-d參數(shù),同時可以使用-a length來指定后綴的長度
[deng@localhost test]$ split -b 10k data.file -d -a 3 split_file [deng@localhost test]$ ls data.file split_file003 split_file007 x001 x005 x009 split_file000 split_file004 split_file008 x002 x006 split_file001 split_file005 split_file009 x003 x007 split_file002 split_file006 x000 x004 x008 [deng@localhost test]$使用-l選項根據(jù)文件的行數(shù)來分割文件,例如把文件分割成每個包含10行的小文件
[deng@localhost test]$ split -l 10 data.file05. 附錄
參考:【Linux】一步一步學Linux系列教程匯總
總結
以上是生活随笔為你收集整理的【Linux】一步一步学Linux——split命令(59)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Linux】一步一步学Linux——p
- 下一篇: 【Linux】一步一步学Linux——m