• <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>

            戰魂小筑

            討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

            Linux下的ldd命令可以查看一個可執行文件/共享庫/靜態庫的依賴, 但是想得到這些依賴文件, 必須手動去找,非常麻煩

            這里是一個Shell可以將依賴列表中的文件拷貝到指定目錄

            deplist=$( ldd $1 | awk '{if (match($3,"/")){ print $3}}' )
            cp $deplist $2
            代碼解釋: ldd導出列表, 這個列表打印出來很丑

            linux-gate.so.1 =>  (0x00ed2000)
                liblog4cpp.so.4 => /usr/local/lib/liblog4cpp.so.4 (0x00657000)
                libprotobuf.so.7 => /usr/local/lib/libprotobuf.so.7 (0x00360000)
                libboost_filesystem.so.1.48.0 => /usr/local/lib/libboost_filesystem.so.1.48.0 (0x00a9a000)
                libboost_program_options.so.1.48.0 => /usr/local/lib/libboost_program_options.so.1.48.0 (0x00110000)
                libboost_system.so.1.48.0 => /usr/local/lib/libboost_system.so.1.48.0 (0x00a85000)
                libboost_thread.so.1.48.0 => /usr/local/lib/libboost_thread.so.1.48.0 (0x00179000)
                libunwind-x86.so.7 => /usr/lib/libunwind-x86.so.7 (0x00821000)
                libluabindd.so.0.9.0 => /usr/local/lib/libluabindd.so.0.9.0 (0x00bb3000)
                libmysqlpp.so.3 => /usr/local/lib/libmysqlpp.so.3 (0x00de5000)
                libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0x001a9000)
                libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0x00782000)
                libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0x00aea000)
                libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x00447000)
                libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0x00abd000)
                librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0x00193000)
                libnsl.so.1 => /lib/i386-linux-gnu/libnsl.so.1 (0x00294000)
                libunwind.so.7 => /usr/lib/libunwind.so.7 (0x002ab000)
                libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x00e8a000)
                libmysqlclient_r.so.16 => /usr/lib/libmysqlclient_r.so.16 (0x0083b000)
                /lib/ld-linux.so.2 (0x00608000)
                libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0x002c0000)

             

            我們發現第一行的so沒有對應的庫地址, 因此我們使用awk的腳本功能,判斷第三個參數,也就是=>之后的路徑必須包含/

            之后將第一行的輸出重定向到變量中, 再使用cp指令從列表拷貝到指定目錄

            posted on 2012-02-29 16:05 戰魂小筑 閱讀(3060) 評論(0)  編輯 收藏 引用 所屬分類: 腳本技術 、網絡 服務器技術 、C++/ 編程語言
            久久久噜噜噜久久| 久久天天躁狠狠躁夜夜avapp | 色欲av伊人久久大香线蕉影院| 久久久综合九色合综国产| 久久精品国产亚洲AV高清热| 国产A级毛片久久久精品毛片| 亚洲国产精品狼友中文久久久| 婷婷久久综合九色综合98| 久久精品国产99国产电影网| 人妻无码久久一区二区三区免费| 亚洲日韩中文无码久久| 久久精品成人欧美大片| 久久久精品人妻一区二区三区蜜桃| 久久久久亚洲国产| 亚洲午夜久久久影院| 久久人人爽爽爽人久久久| 综合网日日天干夜夜久久| 久久这里只有精品18| 久久99国产精品久久99果冻传媒| 精品久久久久久久久午夜福利| 久久精品亚洲一区二区三区浴池| 久久97精品久久久久久久不卡| 嫩草影院久久国产精品| 污污内射久久一区二区欧美日韩| 亚洲国产另类久久久精品小说| 99国产欧美精品久久久蜜芽| 久久996热精品xxxx| 久久精品视频一| 久久国产精品77777| A级毛片无码久久精品免费| 久久久久九国产精品| 伊人久久大香线蕉AV色婷婷色| 99久久人妻无码精品系列| 久久久综合香蕉尹人综合网| 无码AV波多野结衣久久| 丁香五月综合久久激情| 国产精品亚洲综合专区片高清久久久| 亚洲国产精品综合久久一线| 欧美午夜精品久久久久免费视| 精品久久久久一区二区三区 | 久久久久久久精品妇女99|