szaydel
1/15/2015 - 2:26 PM

Basic shell script that checks executable files for missing library links.

Basic shell script that checks executable files for missing library links.

#!/usr/bin/env ksh
# Ugly hack to quickly spot missing linked libraries with `ldd`

for dir in "/usr/bin" "/usr/sbin"; do
    list=(`find "${dir}" -exec file {} \; | awk -F: '/ELF/ {print $1}'`)
    for item in ${list[@]}; do
        missing=`ldd "${item}"|awk '/\(file not found\)/ {printf "%s", $1}'`
        if [[ ! -z "${missing}" ]]; then
            printf "Executable: %s -- Link: %s\n" "${item}" "${missing}"
        fi
    done
done