printdeps (521B)
1 #!/bin/sh 2 3 print_deps() 4 { 5 local dir=$1 6 deps='' 7 if [ -e ${dir}/dependencies ]; then 8 deps=$(tr ':' '\n' <${dir}/dependencies | sort | tr '\n' ' ') 9 fi 10 printf "%s" "${deps}" 11 } 12 13 dirlist='' 14 if [ "$1" = "-h" ]; then 15 cat <<! >&2 16 Usage: $0 [-h] [packages] 17 If no packages are given, prints dependencies of all packages in 18 subdirectories 19 ! 20 exit 1 21 elif [ $# -lt 1 ]; then 22 dirlist=$(find * -type d -prune) 23 else 24 dirlist="$*" 25 fi 26 27 for d in ${dirlist} 28 do 29 printf "%s\n" ${d##*/} 30 printf '\t' 31 print_deps $d 32 printf '\n' 33 done