筆記:Linux 檔案的排序、合併和分割
阿新 • • 發佈:2018-11-09
- fsort命令
sort命令的基本格式:
sort [選項] [輸入檔案]
例如:
檢視/etc/passwd 檔案的內容
cat /etc/passwd
以預設方式對/etc/passwd檔案排序
sort -t: /etc/passwd
2. uniq命令
uniq命令用於去除文字檔案中的重複行,類似於sort命令的-u選項,但是,uniq命令和sort -u是存在一些區別的,請看示例:
cat w #檢視w檔案的內容 uniq w #用uniq命令去除重複行,相鄰重複行去除 sort -u w #用sort -u去除重複行,所有重複行都去除
uniq命令選項及其意義
-c #列印每行在文字中重複出現的次數
-d #只顯示有重複的記錄,每個重複記錄只出現一次
-u #只顯示沒有重複的記錄
- join命令
join命令用於實現兩個檔案中記錄的連線操作,連線操作是關係資料庫中的概念,簡言之,連線操作將兩個檔案中具有相同域的記錄選擇出來,再將這些記錄所有的域放到一行(包含來自兩個檔案的所有域)。
d:x:e #包含3個域,以冒號分割域
- cut命令
cut命令用於從標準輸入或文字檔案中按域或行提取文字,cut命令的基本格式為:cut [選項] 檔案
-c #指定提取的字元數或字元範圍 -f #指定提取的域數或域範圍 -d #改變域分隔符
- paste命令
paste命令用於將文字檔案或標準輸出中的內容粘帖到新的檔案,它可以將來自不同檔案的資料粘帖到一起,形成新的檔案。paste命令的基本格式是:paste [選項] 檔案1 檔案2
-d #預設域分隔符是空格或Tab鍵,設定新的域分隔符
-s #將每個檔案粘帖成一行
- #從標準輸入中讀取資料
- split命令
split命令用於將大檔案切割成小檔案,split命令可以按照檔案的行數、字元數切割檔案,並能在輸出的多個小檔案中自動加上編號。split命令的基本格式:split [選項] 待切割的大檔案 輸出的小檔案
-或-l #此兩個選項等價,都用於指定切割成小檔案的行數 -b #指定切割成小檔案的位元組 -C #與-b選項類似,但是,切割時儘量維持每行的完整性