• <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>
            posts - 297,  comments - 15,  trackbacks - 0
            1.關于文件對比的Scripts
            diff -b -r $Dir1 $Dir2 | grep -v "Common subdirectories" | grep -e "^diff" -e "^Binary files" -e "^Only"
            diff:
             -b  --ignore-space-change 
                          Ignore changes in the amount of white space.
             -r  --recursive
                          Recursively compare any subdirectories found.
            grep:
             -v, --invert-match
                          Invert the sense of matching, to select non-matching lines.
             -e PATTERN, --regexp=PATTERN
                          Use PATTERN as the pattern; useful to protect patterns beginning with -.

            2. grep的正則表達式:
            比如,要匹配兩個單詞:  word  exec
            grep -E "word|execl"  是可以得到正確結果的
            AND:
            grep -E "word&execl"  和預期的不一樣
            grep -E 'excel.*word|work.*excel'是可以的。
            注:正則表達式跟邏輯操作符是倆概念 , 只有awk支持||,&&這樣的操作,
            用grep的話, 也只支持|而不支持&。
            正則基礎:)
            $cat rfile
            abcd
            abc
            ab
            $grep -E 'abc.*' rfile
            abcd
            abc
            $grep -E 'abc*' rfile
            abcd
            abc
            ab

            3. 如何獲得一個文件的前N列或是其中的幾列?
            cut -f-2 -d ' ' filename
            -f field   -d dilimeter

            4.刪除某個目錄下不是以.sh .h .c結尾的文件
            find . -type f | awk '!/\.sh$/ && !/\.[c|h]$/{print $1}' | xargs rm

            5.原來用冒號分隔的,選出幾列來,改成用豎杠分隔的
            cat /etc/passwd | awk -F: '{print $1"|"$2"|"$3"|"$4}'

            6.去掉文件中的字符,比如去掉從win上傳到Linux上的文件時會有個^M,若去掉他可以用:
            tr -d '\015'  < filename

            7.目錄樹是
            A/B/C/
            A/B/C/ccc/...
            A/B/C/bbb/...
            A/B/C/D/aaa/...
            我現在在A下,我要查找html后綴文件, 但是不想它在包含aaa||bbb||ccc的目錄下查找.
            find . \( -name Input -o -name Output -o -name Current \) -type d -prune -o -name "*.htm" -print
            這個命令中的目錄排除沒有起作用,為什么嗯?很困惑。
            find . -wholename './A/B' -prune -o -print
            這個命令也不起作用,更困惑了,不認wholename

            8. 循環讀文件的命令
            for x in `seq 1 12`; do cat $x|awk '{print $9}' && sleep 3;done
            seq 是Linux 中一個預設的外部命令,一般用作一堆數字的簡化寫法,如
            seq 1 10
            便會出現
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            它還有三個選項
              -f, --format=FORMAT      use printf style floating-point FORMAT (default: %g)
              -s, --separator=STRING   use STRING to separate numbers (default: \n)
              -w, --equal-width        equalize width by padding with leading zeroes
            -f 最常用 , 例如一次制做 10 個名 dir001 , dir002 .. dir010 的目錄,它便很有用途,我們可以這樣
            下一個命令便可了
            seq -f 'dir%03g' 1 10 | xargs mkdir

            mkdir $(seq -f 'dir%03g' 1 10)
            它用的是 printf 的格式 , %03g' 代表以三位浮點數,以此方法,
            如用bash3 的 printf也可作為等價命令
            printf 'dir%03d\n' {1..10} | xargs mkdir  或 mkdir `printf 'dir%03d ' {1..10}`
            awk 當然也可以
            awk 'BEGIN { while (num < 10 ) printf "dir%03d\n", ++num ; exit}' | xargs mkdir
            這樣會比寫一個腳本快, 不必寫成
            for dir in 001 002 003 004 005 006 007 008 009 010
            do
                mkdir dir${dir}
            done

            9.找出當前目錄下大于100M的目錄
            find . -maxdepth 1 -type d | xargs du -sh | grep -v '\.$'| grep -P '^\S+M\t' | awk -FM '$1>1'

            posted on 2009-11-08 11:19 chatler 閱讀(259) 評論(0)  編輯 收藏 引用 所屬分類: Shell
            <2009年4月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            常用鏈接

            留言簿(10)

            隨筆分類(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久毛片一区二区| 色综合色天天久久婷婷基地| 久久99精品免费一区二区| 久久精品国产亚洲AV大全| 国产精品9999久久久久| 97精品伊人久久大香线蕉app| 狠狠色丁香婷婷久久综合不卡| 久久精品九九亚洲精品天堂| 狠狠综合久久综合中文88| 久久国产精品无| 99久久无色码中文字幕| 久久天天躁狠狠躁夜夜2020| 久久亚洲精品无码VA大香大香| 99久久婷婷国产综合亚洲| 九九久久精品国产| 久久久久亚洲av无码专区| 久久黄视频| 久久精品国产精品青草app| 伊人久久精品影院| 国内精品久久久久久中文字幕| 国产激情久久久久久熟女老人| 成人精品一区二区久久久| 国产美女久久精品香蕉69| 久久久久亚洲?V成人无码| 久久777国产线看观看精品| 久久精品国产亚洲AV忘忧草18| 精品久久久久久无码国产 | 欧美一区二区精品久久| 国产香蕉久久精品综合网| 国产AⅤ精品一区二区三区久久| 无码久久精品国产亚洲Av影片 | 欧美性猛交xxxx免费看久久久| 亚洲熟妇无码另类久久久| 精品久久久久久无码不卡| 久久精品国产半推半就| 99久久无码一区人妻a黑| 久久久女人与动物群交毛片| 久久综合噜噜激激的五月天| 99久久做夜夜爱天天做精品| 久久人人爽人人爽人人片AV麻烦| 久久精品无码一区二区三区免费|