Usage: . classpath.sh (option) [dir]
(option)
-a add CLASSPATH
-r recursive
指定したディレクトリを走査して jar ファイルだけを環境変数 CLASSPATH に追加します。以下ソースです。
#!/bin/sh
if [ -z "$1" ]; then
echo "Usage: . classpath.sh (option) [dir]"
echo "(option)"
echo " -a add CLASSPATH"
echo " -r recursive"
exit 0
fi
_recursive=0
_add=0
dir=
parse_arguments() {
for arg do
case "$arg" in
-r) _recursive=1 ;;
-a) _add=1 ;;
*) dir=$arg ;;
esac
done
}
classpath() {
for i in "$1"/*; do
if [ -d "$i" -a $_recursive -eq 1 ]; then
classpath "$i"
elif [ "${i##*.}" = "jar" ]; then
_classpath=$_classpath:$i
fi
done
}
if [ $_add -eq 1 ]; then
_classpath=$CLASSPATH
if [ -z "$_classpath" ] ; then
_classpath=.
fi
fi
parse_arguments $*
classpath "$dir"
export CLASSPATH=$_classpath
unset _classpath