ldd获得可执行程序的所有库并输出到指定目录

#!/bin/bash

##########################################################################
#ldd可以查看程序的库依赖情况,请写一个脚本,将任意一个程序依赖的库收集到一个文件夹.
#其中:
#    输入参数为:可执行程序(或库)文件(包含路径)和输出文件夹;
#    输出收集日志,并将依赖的库收集到指定文件夹。
##########################################################################

##########################################################################
#FileName: GetSoFile.sh
#Function: generate so file list.
#Create time: 2015.09.15
#########################################################################

module="$1"
path="./$2"

ldd $module | awk -v path=$path                                
'                                                            
BEGIN{                                                        
    "mkdir -p '$path'" | getline;                            
    system("echo get lib, the file path is "path"");        
}                                                            
!/not found/{                                                
            if(NF == 4)                                        
            {                                                
                libpath=$(NF - 1);                            
                system("cp "libpath" "path"");                
                print "cp "libpath" "path"";                
            }                                                
        }                                                    
/not found/{                                                
            lib=$1;                                            
            cmd="locate "lib" | head -n 1";                    
            cmd|getline pos;                                
            cpcmd="cp "pos" "path"";                        
            cpcmd|getline;                                    
            print "cp "pos" "path"";                        
        }                                                    
END{                                                        
    system("echo get lib ok.");                                
}
'
原文地址:https://www.cnblogs.com/foreverstars/p/4811545.html