sort


sort練習

1. 用man sort 查看sort的幫助文檔**

2.sort常用選項

短參數 長參數 說明
-n – number-sort 按字符串數值排序,與-g區別為不轉為浮點數
-g –general-number-sort 按通用數值排序,支持科學計數法
-f –ignore-case 忽略大小寫,默認大小寫字母不同
-k –key=POS1[,POS2] 排序從POS1開始,若指定POS2,則POS2結束,否則以pos1排序
-t –field-separator=SEP 指定列的分割符
-r –reverse 降序排序,默認為升序
-h –human-numeric-sort 使用易讀性數字(例如: 2K 1G)
-u –unique 去除重復的行
-o –output=FILE 將輸出寫入文件
  • 常用用法舉例
    1.默認排序

    2.數字排序
    使用-n對數字進行排序

    3.指定列排序
    sort排序的時候,可以按字段分割的數據進行排序。-t參數表示行的分割字符,-k表示第幾列
    下列是使用"/"進行分割,不同列情況下的排序

    4.對文件內容進行去重
    如果文件內容有很多重復的,需要進行去重,可以通過使用-u參數

    5.降序排序
    -r 以相反的順序來排序
    • 同時發現參數字母好像可以進行合並,經過實驗sort -n -r num.txt與sort -nr num.txt結果相同

      6.將sort輸出內容寫入文件
      想把sort的排序內容寫回文件,可以使用-o

      7.檢查文件內容是否已排好序
      -c會檢查文件是否已排好序,如果亂序,則輸出第一個亂序的行的相關信息,最后返回1
      -C會檢查文件是否已排好序,如果亂序,不輸出內容,僅返回1

3. 如果讓你編寫sort,你怎么實現?寫出偽代碼和相關的函數或系統調用

代碼思路:
1.嘗試尋找可以使用的系統調用或C庫函數



但是並沒有老師上課所說的2組與3組,不知道為什么,只能進行想法構想

  • 使用open系統調用需要打開的文件
  • 使用read系統調用讀取文件內容
  • 使用qsort函數進行排序
  • 如果有需要新文件使用creat創建一個新的文件放置新的文本
  • 使用write將排序好的內容進行輸出

    參考網頁:https://blog.csdn.net/qq_16836151/article/details/51527160


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM