1. 程式人生 > >Shell命令-文件及內容處理之split、paste

Shell命令-文件及內容處理之split、paste

spl 小文件 寫到 情況 file 設置 ack 原來 疑問

文件及內容處理 - split、paste

1. split:分割文件為不同的小片段

split命令的功能說明

split 命令用於將一個文件分割成數個。該指令將大文件分割成較小的文件,在默認情況下將按照每1000行切割成一個小文件。

split命令的語法格式

split [OPTION]... [INPUT [PREFIX]]
split [--help][--version][-<行數>][-b <字節>][-C <字節>][-l <行數>][要切割的文件][輸出文件名]

split命令的常用參數說明:

split 參數不多,表1為 split

命令的參數及說明:

表1: split 命令的參數及說明

參數選項 解釋說明
-<行數> 指定每多少行切成一個小文件
-b<字節> 指定每多少字節切成一個小文件
--help 在線幫助
--version 顯示版本信息
-C<字節> 與參數"-b"相似,但是在切 割時將盡量維持每行的完整性
[輸出文件名] 設置切割後文件的前置文件名, split會自動在前置文件名後再加上編號

split命令的實踐操作

範例1: 使用指令 split 將文件 README 每 6 行切割成一個文件,輸入如下命令

split -6 README 

以上命令執行後,指令 split 會將原來的大文件 README 切割成多個以 x 開頭的小文件。而在這些小文件中,每個文件都只有 6 行內容。使用指令 ls 查看當前目錄結構,如下所示:

[[email protected] ~]# ls
README xaa xad xag xab xae xah xac xaf xai 

2. paste:按行合並文件內容

paste命令的功能說明

paste 命令用於合並文件的列。paste 指令會把每個文件以列對列的方式,一列列地加以合並。

paste命令的語法格式

paste [OPTION]... [FILE]...

paste [-s][-d <間隔字符>][--help][--version][文件...]

paste命令的常用參數說明:

paste 參數不多,表1為 paste 命令的參數及說明:

表1: paste 命令的參數及說明

參數選項 解釋說明
-d<間隔字符>或--delimiters=<間隔字符>  用指定的間隔字符取代跳格字符。
-s或--serial   串列進行而非平行處理。
--help  在線幫助。
--version  顯示幫助信息。
[文件…] 指定操作的文件路徑

paste命令的實踐操作

範例1: 使用 paste 指令將文件 filetestfiletestfile1 進行合並,輸入如下命令:

paste file testfile testfile1

在執行以上命令之前,首先使用 cat 指令對 3 個文件內容進行查看,顯示如下所示:

[[email protected] ~]#  cat file                 
xiongdan 200  
lihaihui 233  
lymlrl 231  
[[email protected] ~]#  cat testfile            
liangyuanm  ss  
[[email protected] ~]#  cat testfile1             
huanggai 56  
zhixi 73 

當合並指令 paste file testfile testfile1執行後,程序界面中將顯示合並後的文件內容,如下所示:

xiongdan 200  
lihaihui 233  
lymlrl 231  
liangyuanm  ss  
huanggai 56  
zhixi 73  

若使用 paste 指令的參數 -s,則可以將一個文件中的多行數據合並為一行進行顯示。例如,將文件 file 中的 3 行數據合並為一行數據進行顯示,輸入如下命令

paste -s file  

上面的命令執行後,顯示的數據內容如下所示:

xiongdan 200 lihaihui 233 lymlrl 231

註意:參數 -s 只是將 testfile 文件的內容調整顯示方式,並不會改變原文件的內容格式。

今天就寫到這裏,有什麽疑問或出現什麽錯誤,隨時歡迎大神們發表評論指點迷津

Shell命令-文件及內容處理之split、paste