• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Khan's Notebook GCC/GNU/Linux Delphi/Window Java/Anywhere

            路漫漫,長修遠,我們不能沒有錢
            隨筆 - 173, 文章 - 0, 評論 - 257, 引用 - 0
            數據加載中……

            技巧: 用 uniq 除去重復行(轉載自ibm論壇)

                重復行通常不會造成問題,但是有時候它們的確會引起問題。
                此時,不必花上一個下午的時間來為它們編制過濾器,uniq 命令便是唾手可得的好工具。了解一下它是如何節省您的時間和精力的。

            進行排序之后,您會發現有些行是重復的。有時候該重復信息是不需要的,可以將它除去以節省磁盤空間。
            不必對文本行進行排序,但是您應當記住 uniq 在讀取行時會對它們進行比較并將只除去兩個或更多的連續行。
            下面的示例說明了它實際上是如何工作的:
            清單 1. 用 uniq 除去重復行

                           
                    $ cat happybirthday.txt
            Happy Birthday to You!
            Happy Birthday to You!
            Happy Birthday Dear Tux!
            Happy Birthday to You!
                    $ sort happybirthday.txt
            Happy Birthday Dear Tux!
            Happy Birthday to You!
            Happy Birthday to You!
            Happy Birthday to You!
                    $ sort happybirthday.txt | uniq
            Happy Birthday Dear Tux!
            Happy Birthday to You!



            警告:請不要使用
                    uniq 或任何其它工具從包含財務或其它重要數據的文件中除去重復行。
                在這種情況下,重復行幾乎總是表示同一金額的另一個交易,將它除去會給會計部造成許多困難。千萬別這么干!
                 

            如果您希望您的工作輕松點,比如只顯示唯一的或重復的行,那么該怎么辦呢?您可以用 -u (唯一)和 -d (重復)選項來做到這一點,例如:
            清單 2. 使用 -u 和 -d 選項
            $ sort happybirthday.txt | uniq -u
            Happy Birthday Dear Tux!
            $ sort happybirthday.txt | uniq -d
            Happy Birthday to You!


            清單 3. 使用 -c 選項

                           
                    $ sort happybirthday.txt | uniq -uc
                  1 Happy Birthday Dear Tux!
                    $ sort happybirthday.txt | uniq -dc
                  3 Happy Birthday to You!
                 


            就算 uniq 對完整的行進行比較,它仍然會很有用,但是那并非該命令的全部功能。特別方便的是:使用 -f 選項,
            后面跟著要跳過的字段數,它能夠跳過給定數目的字段。當您查看系統日志時這非常有用。
            通常,某些項要被復制許多次,這使得查看日志很難。使用簡單的 uniq 無法完成任務,因為每一項都以不同的時間戳記開頭。
            但是如果您告訴它跳過所有的時間字段,您的日志一下子就會變得更加便于管理。試一試 uniq -f 3 /var/log/messages ,親眼看看。

            還有另一個選項 -s ,它的功能就像 -f 一樣,但是跳過給定數目的字符。您可以一起使用 -f 和 -s 。
            uniq 先跳過字段,再跳過字符。如果您只想使用一些預先設置的字符進行比較,那么該怎么辦呢?試試看 -w 選項。


            posted on 2007-11-19 10:23 Khan 閱讀(1086) 評論(1)  編輯 收藏 引用 所屬分類: 跨平臺開發周邊技術

            評論

            # re: 技巧: 用 uniq 除去重復行(轉載自ibm論壇)  回復  更多評論   

            那么該怎么辦呢?
            2008-12-27 10:07 | 北京論壇
            狠狠人妻久久久久久综合| 香蕉久久AⅤ一区二区三区| 久久香综合精品久久伊人| 亚洲AV无码久久精品狠狠爱浪潮| 久久人人爽人人爽人人片AV不| 久久精品99久久香蕉国产色戒| 国产精品成人无码久久久久久| 久久久久久国产精品美女| 亚洲香蕉网久久综合影视| 精品久久久久久99人妻| 亚洲国产另类久久久精品小说| 国产亚洲精午夜久久久久久 | 亚洲国产精品嫩草影院久久| 狠狠色丁香婷婷久久综合五月| 久久A级毛片免费观看| 久久影院午夜理论片无码| 久久精品九九亚洲精品天堂| 久久人人爽人人爽人人片AV东京热 | 久久久久这里只有精品 | 亚洲国产精品一区二区久久| 精品国产青草久久久久福利| 久久久久噜噜噜亚洲熟女综合| 伊人久久大香线蕉综合影院首页| 理论片午午伦夜理片久久| 丁香久久婷婷国产午夜视频| 午夜不卡久久精品无码免费| 伊人久久综合无码成人网| 久久精品卫校国产小美女| 久久国产香蕉视频| 久久国产综合精品五月天| 精品久久久久久久中文字幕| 久久91精品国产91久久麻豆| 久久精品国产精品亚洲毛片| 久久午夜无码鲁丝片| 99久久国产宗和精品1上映| 国产成人久久精品一区二区三区| 亚洲欧美一区二区三区久久| 久久精品极品盛宴观看| 久久伊人五月丁香狠狠色| 午夜精品久久久久久毛片| 久久亚洲国产成人精品性色|