Skip to content
Snippets Groups Projects
listdeps 699 B
Newer Older
#!/bin/bash
set -e
software=$1
if [ -z $1 ]; then 
    echo 'please specify target software'
    echo 'input can be either '
    echo 'listdeps <name>'
    echo 'OR'
    echo 'listdeps <name> <version>'
    exit 1
fi
version=$2

else 
    version=( $(ls /usr/local/Modules/modulefiles/$software) )
for ver in $version; do touch $software/$ver; done
for i in $(ls -d /usr/local/*/); do
    name=$(basename $i)
    load_ver=$(module show $name 2>&1 | sed -n "s/module.*load\ ${software}\/\(.*\)/\1/p")
    if [ ! -z $load_ver ] && [ -f $software/$load_ver ]; then 
        echo $name >> $software/$load_ver
    fi
done
set +e