Linux 的 'sort'命令的七個有趣實例(二)

2022-01-12 Linux中國

在上一篇文章裡,我們已經探討了關於sort命令的多個例子,如果你錯過了這篇文章,可以點擊下面的連結進行閱讀。今天的這篇文章作為上一篇文章的繼續,將討論關於sort命令的剩餘用法,與上一篇一起作為Linux 『sort』命令的完整指南。

在我們繼續深入之前,先創建一個文本文檔『month.txt』,並且將上一次給出的數據填進去。

$ echo -e "mar\ndec\noct\nsep\nfeb\naug" > month.txt

$ cat month.txt

15、 通過使用』M『選項,對’month.txt『文件按照月份順序進行排序。

$ sort -M month.txt

注意:『sort』命令需要至少3個字符來確認月份名稱。

16、 把數據整理成方便人們閱讀的形式,比如1K、2M、3G、2T,這裡面的K、G、M、T代表千、兆、吉、梯。 (LCTT 譯註:此處命令有誤,ls 命令應該增加 -h 參數,徑改之)

$ ls -lh /home/$USER | sort -h -k5

17、 在上一篇文章中,我們在例子4中創建了一個名為『sorted.txt』的文件,在例子6中創建了一個『lsl.txt』。『sorted.txt'已經排好序了而』lsl.txt『還沒有。讓我們使用sort命令來檢查兩個文件是否已經排好序。

$ sort -c sorted.txt

如果它返回0,則表示文件已經排好序。

$ sort -c lsl.txt

報告無序。存在矛盾……

18、 如果文字之間的分隔符是空格,sort命令自動地將空格後的東西當做一個新文字單元,如果分隔符不是空格呢?

考慮這樣一個文本文件,裡面的內容可以由除了空格之外的任何符號分隔,比如『|』,『\』,『+』,『.』等……

創建一個分隔符為+的文本文件。使用『cat『命令查看文件內容。

$ echo -e "21+linux+server+production\n11+debian+RedHat+CentOS\n131+Apache+Mysql+PHP\n7+Shell Scripting+python+perl\n111+postfix+exim+sendmail" > delimiter.txt

$ cat delimiter.txt

現在基於由數字組成的第一個域來進行排序。

$ sort -t '+' -nk1 delimiter.txt

然後再基於非數字的第四個域排序。

如果分隔符是制表符,你需要在』+『的位置上用$』\t』代替,如上例所示。

19、 對主用戶目錄下使用『ls -l』命令得到的結果基於第五列(『文件大小』)進行一個亂序排列。

$ ls -l /home/avi/ | sort -k5 -R

每一次你運行上面的腳本,你得到結果可能都不一樣,因為結果是隨機生成的。

正如我在上一篇文章中提到的規則2所說——sort命令會將以小寫字母開始的行排在大寫字母開始的行前面。看一下上一篇文章的例3,字符串『laptop』在『LAPTOP』前出現。

via: http://www.tecmint.com/linux-sort-command-examples/

作者:Avishek Kumar 譯者:DongShuaike 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


相關焦點

  • Linux命令之七 sort命令
    收錄於話題 #linux25個
  • linux中14個有趣的排序命令示例
    Sort 是一個 Linux 程序,用於列印輸入文本文件的行並按排序順序連接所有文件。排序命令將空格作為欄位分隔符,將整個輸入文件作為排序鍵。重要的是要注意 sort 命令實際上並不對文件進行排序,而只是列印排序後的輸出,直到您重定向輸出。
  • CentOS Linux系統的排序命令sort
    CentOS Linux學習筆記總結(八十五)-CentOS Linux系統的排序命令sortsort命令是linux系統中非常常用的一個排序命令,sort的工作原理就是將文件的每一行作為一個單位,相互比較,比較原則是從首字符向後,依次按ASCII碼進行比較,然後按照順序輸出。
  • Linux 的 'sort'命令的14個有用的範例(一)
    Sort是用於對單個或多個文本文件內容進行排序的Linux程序。Sort命令以空格作為欄位分隔符,將一行分割為多個關鍵字對文件進行排序。需要注意的是除非你將輸出重定向到文件中,否則Sort命令並不對文件內容進行實際的排序(即文件內容沒有修改),只是將文件內容按有序輸出。本文的目標是通過14個實際的範例讓你更深刻的理解如何在Linux中使用sort命令。
  • Linux 上 12 個高效的文本過濾命令
    windowsmint.comwindowsmint.com你可以像這樣運行一個簡單的 sort 命令[12] 來排序文件內容:tecmint@TecMint ~ $ sort domains.listlinuxsay.comlinuxsay.comnews.tecmint.com
  • 使用cat命令在Linux中組合文本文件
    示例1:將三個文件中的文本合併到另一個文本文件中我們在系統上創建了三個示例文本文件,名稱為linuxidc1.txt,linuxidc2.txt和linuxidc3.txt。 所有這些文件都包含一行文本。 以下使用CAT命令將在單個輸出中顯示所有這些文件中的文本。
  • linux sort,uniq,cut,wc命令詳解
    sort 命令對 File 參數指定的文件中的行排序,並將結果寫到標準輸出。如果 File 參數指定多個文件,那麼 sort 命令將這些文件連接起來,並當作一個文件進行排序。4個字符進行正向排序,再基於第一個域進行反向排序。
  • 動畫演示10個有趣但毫無用處的Linux命令
    在這些大量的有用的命令和腳本中,你會發現有少部 分命令工具不那麼有用的——如果你不願意說是完全沒用處的話。你要知道,Linux命令終端並不是總來幹一些嚴肅的事情的,這裡列舉的幾個沒有實際用處、 但很有趣的命令,它們的有趣並不是因為無用,而是真的有趣,接下來就讓我們看看它們是如何搞怪的吧。一、cmatrix你應該看過好萊塢大片《駭客帝國》,相信你會對電影中那些神奇的場景著迷。
  • 每天一個 Linux 命令(130):sort 命令
    如果 file 參數指定多個文件,那麼 sort 命令將這些文件縱向連接起來,當作一個文件進行排序。不加任何選項時,將對整行從第一個字符開始依次向後直到行尾按照 ASCII 碼值做升序排序。2.命令格式sort [OPTION]... [FILE]...
  • 14 個簡單、有趣、好玩的 Linux 命令
    來源 | 大數據夢想家作者 | 猿人菌前言        相信大家對於 linux 常用的命令一定都不陌生,但是一些簡單、好玩、有趣,雖然可能沒有實際作用的命令,你又有了解多少呢?話不多說,本期文章為大家帶來 14 個好玩的 linux 命令,希望大家能夠喜歡!
  • 【知識點】Linux wget 命令實例
    wget是Linux/Unix命令行文件下載器,它是下載網站上文件的免費的非交互下載工具,它支持HTTP、HTTPS和FTP協議,也支持通過HTTP代理檢索。實例1 :下載單個文件# wget http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso該命令會下載CentOS 7 ISO文件到用戶當前工作目錄中。
  • 一些命令行小技巧:wc、sort、sed 和 tr | Linux 中國
    讓我們來看看一些命令行實用工具,當你熱衷於終端而不是 GUI 時,它們可能更順手。我們都知道在一個系統上使用終端會更高效。當你編輯和排版一個文本文件時,終端會讓你確切的感受到,生活如此簡單。本文將向你介紹 wc、sort、tr 和 sed 命令。wcwc 是一個實用工具,全稱是 「word count」。
  • 每天一個 Linux 命令:grep 命令
    3.命令參數:-a   --text   #不要忽略二進位的數據。   -A<顯示行數>   --after-context=<顯示行數>   #除了顯示符合範本樣式的那一列之外,並顯示該行之後的內容。
  • 【Linux】常用命令之 awk 常用實例
    二、awk命令用法示例1)按行輸出文本1、輸出所有內容[linuxmi@linux:~/linuxmi迷]$ awk '{print}' linuxmi.py[linuxmi@linux:~/linuxmi迷]$ awk '{print
  • Linux下解壓命令
    希望看完這篇文章,你就不會覺得複雜了!tar命令常見參數與實例:—————————————————必須的參數:(3個參數不能共存)-c :創建壓縮文件c代表create。-x :解壓縮文件-t :查看壓縮包裡面的文件!
  • Linux常用命令:Linux more命令使用方法
    1.命令格式:more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 2.命令功能:more命令和cat的功能一樣都是查看文件裡的內容,但有所不同的是more可以按頁來查看文件的內容,還支持直接跳轉行等功能。
  • 每天學一個 Linux 命令(32):sort
    昨日推薦:每天學一個 Linux 命令(31):md5sum命令簡介sort 對文件的文本內容排序。系統默認情況下,排序規則如下:語法格式sort [選項] [文件]sort [OPTION] [FILE]選項說明-b    #排除開頭的空白-d    #只考慮空白、字母、數字-f
  • 乾貨 | 名企高頻考點-Linux命令之sort
    我們結合海量面經,提取出幾個最容易被問到的Linux對文件內容進行排序的命令,供大家參考。1.1 簡述sort 命令可以針對文本文件的內容,按行進行排序。在排序的時候以指定分隔符對文本文件進行內容分列。對指定列進行升序或降序排列,並且在排序的同時可以指定是否忽略大小寫。
  • LFCS 系列第一講:如何在 Linux 上使用 GNU sed 等命令來創建、編輯和操作文件
    g 標誌表示 sed 應該替換文件每一行中所有應當替換的實例。如果這個標誌省略了,sed 將會只替換每一行中第一次出現的實例。因此,uniq 經常和一個前置的 sort 命令(一種用來對文本行進行排序的算法)搭配使用。默認情況下,sort 使用第一個欄位(用空格分隔)作為關鍵欄位。要指定一個不同的關鍵欄位,我們需要使用 -k 選項。
  • linux命令大全
    雖然,大部分人最熟悉的還是WINDOWS用戶,但是總有各種各樣的原因讓我們選擇linux,不論因為何種原因開始接觸linux,但都希望大家儘快進入到Linux的世界裡,玩轉Linux高手,最終發現linux的可愛之處。本文將linux命令大致分為了10個部分:文件管理、磁碟管理、文檔編輯、文件傳輸、磁碟維護、網絡通訊、系統管理、系統設置、備份壓縮、設備管理。各位看官可將本文收藏,以備將來不時之需。