自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

14個(gè)實(shí)戰(zhàn)案例帶你了解Linux的‘sort’命令

系統(tǒng) Linux 系統(tǒng)運(yùn)維
本文的目標(biāo)是通過(guò)14個(gè)實(shí)際的范例讓你更深刻的理解如何在Linux中使用sort命令。

sort是什么

Sort是用于對(duì)單個(gè)或多個(gè)文本文件內(nèi)容進(jìn)行排序的Linux程序。

Sort命令以空格作為字段分隔符,將一行分割為多個(gè)關(guān)鍵字對(duì)文件進(jìn)行排序。

請(qǐng)注意,除非你將輸出重定向到文件中,否則Sort命令并不對(duì)文件內(nèi)容進(jìn)行實(shí)際的排序(即文件內(nèi)容沒(méi)有修改),只是將文件內(nèi)容按有序輸出。

本文的目標(biāo)是通過(guò)14個(gè)實(shí)際的范例讓你更深刻的理解如何在Linux中使用sort命令。  

[[185068]] 

實(shí)戰(zhàn)演示

1、目標(biāo)文件創(chuàng)建

首先創(chuàng)建一個(gè)用于執(zhí)行‘sort’命令的文本文件(tecmint.txt)。

工作路徑是‘/home/$USER/Desktop/tecmint’。

下面命令中的‘-e’選項(xiàng)將啟用‘\’轉(zhuǎn)義,將‘\n’解析成換行:  

   

 

2、查看文件

在開(kāi)始學(xué)習(xí)‘sort’命令前,我們先看看文件的內(nèi)容及其顯示方式:  

   

3、基礎(chǔ)排序

現(xiàn)在,使用如下命令對(duì)文件內(nèi)容進(jìn)行排序。 

 

   

 

注意:上面的命令并不對(duì)文件內(nèi)容進(jìn)行實(shí)際的排序,僅僅是將其內(nèi)容按有序方式輸出。

4、排序并輸出

對(duì)文件‘tecmint.txt’文件內(nèi)容排序,并將排序后的內(nèi)容輸出到名為sorted.txt的文件中,然后使用cat命令查看驗(yàn)證sorted.txt文件的內(nèi)容。  

   

 

5、逆序排列

現(xiàn)在使用‘-r’參數(shù)對(duì)‘tecmint.txt’文件內(nèi)容進(jìn)行逆序排序,并將輸出內(nèi)容重定向到‘reversesorted.txt’文件中,并使用cat命令查看文件的內(nèi)容。  

   

 

6、穿建新文件

創(chuàng)建一個(gè)新文件(lsl.txt),文件內(nèi)容為在home目錄下執(zhí)行‘ls -l’命令的輸出。  

   

 

我們將會(huì)看到對(duì)其他字段進(jìn)行排序的例子,而不是對(duì)默認(rèn)的開(kāi)始字符進(jìn)行排序。

7、基于某列符號(hào)連接數(shù)量排序

基于第二列(符號(hào)連接的數(shù)量)對(duì)文件‘lsl.txt’進(jìn)行排序。  

 

注意:上面例子中的‘-n’參數(shù)表示對(duì)數(shù)值內(nèi)容進(jìn)行排序。當(dāng)想基于文件中的數(shù)值列對(duì)文件進(jìn)行排序時(shí),必須要使用‘-n’參數(shù)。 

 

8、基于某列名稱排序

基于第9列(文件和目錄的名稱,非數(shù)值)對(duì)文件‘lsl.txt’進(jìn)行排序。  

  

 

9、輸出內(nèi)容重定向

sort命令并非僅能對(duì)文件進(jìn)行排序,我們還可以通過(guò)管道將命令的輸出內(nèi)容重定向到sort命令中。  

 

 

10、排序并去重

對(duì)文件tecmint.txt進(jìn)行排序,并刪除重復(fù)的行。然后檢查重復(fù)的行是否已經(jīng)刪除了。  

 

 

排序規(guī)則:

除非指定了‘-r’參數(shù),否則排序的優(yōu)先級(jí)按下面規(guī)則排序

以數(shù)字開(kāi)頭的行優(yōu)先級(jí)***

以小寫(xiě)字母開(kāi)頭的行優(yōu)先級(jí)次之

待排序內(nèi)容按字典序進(jìn)行排序

默認(rèn)情況下,‘sort’命令將帶排序內(nèi)容的每行關(guān)鍵字當(dāng)作一個(gè)字符串進(jìn)行字典序排序(數(shù)字優(yōu)先級(jí)***,參看規(guī)則 1)

11、輸出內(nèi)容

在當(dāng)前位置創(chuàng)建第三個(gè)文件‘lsla.txt’,其內(nèi)容用‘ls -lA’命令的輸出內(nèi)容填充。  

  

 

了解ls命令的讀者都知道‘ls -lA’ 等于 ‘ls -l’ + 隱藏文件,所以這兩個(gè)文件的大部分內(nèi)容都是相同的。

12、兩個(gè)文件排序輸出

對(duì)上面兩個(gè)文件內(nèi)容進(jìn)行排序輸出。  

 

  

 

13、兩個(gè)文件排序合并并去重

現(xiàn)在我們看看怎樣對(duì)兩個(gè)文件進(jìn)行排序、合并,并且刪除重復(fù)行。  

 

  

 

此時(shí),我們注意到重復(fù)的行已經(jīng)被刪除了,我們可以將輸出內(nèi)容重定向到文件中。

14、基于多列排序

我們同樣可以基于多列對(duì)文件內(nèi)容進(jìn)行排序?;诘?,5(數(shù)值)和9(非數(shù)值)列對(duì)‘ls -l’命令的輸出進(jìn)行排序。 

 

 

 

責(zé)任編輯:龐桂玉 來(lái)源: 馬哥Linux運(yùn)維
相關(guān)推薦

2018-04-17 09:20:35

Linux命令crypt

2018-07-05 08:30:54

Python命令行工具shell

2012-05-10 08:46:05

Linuxsort命令

2017-12-27 09:40:32

Linuxfind命令

2019-12-09 16:35:03

awkLinux命令

2019-07-29 19:30:54

Linux命令ls命令

2019-10-22 08:30:26

LinuxFHS進(jìn)程

2010-06-21 14:31:39

Linux aprop

2018-07-02 15:18:39

Linux文件系統(tǒng)

2018-02-05 10:07:33

操作系統(tǒng)LinuxUnix

2018-03-20 15:25:03

前端JavaScript Vue

2009-08-03 12:02:13

linux at命令linux at命令詳使用案例

2009-12-25 10:52:50

Linux監(jiān)管命令

2010-11-23 13:34:12

微軟Lync

2021-06-24 10:24:57

Linux輸入輸出設(shè)備Interface

2018-07-12 15:03:41

2020-06-23 10:03:33

版本控制項(xiàng)目

2019-11-21 00:00:15

Linuxless命令

2013-10-11 15:26:32

linux網(wǎng)絡(luò)監(jiān)控

2022-09-26 11:30:40

MQTT協(xié)議客戶端協(xié)議
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)