34 lines
633 B
Plaintext
34 lines
633 B
Plaintext
|
case $# in
|
||
|
1) DEST="$1"
|
||
|
SRC=`basename $DEST`
|
||
|
;;
|
||
|
2) DEST="$2"
|
||
|
SRC="$1"
|
||
|
;;
|
||
|
*) echo 'Usage:' $0 [source] destination 1>&2
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
DIR=`expr "$DEST" ':' '\(.*\)/[^/]*' '|' "XXXX"`
|
||
|
case $DIR in
|
||
|
XXXX) echo 'Illegal desination argument:' "$DEST"
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
mkdir ../../$DIR > /dev/null 2>&1
|
||
|
chmod 775 ../../$DIR > /dev/null 2>&1
|
||
|
if cp "$SRC" ../../$DEST >/dev/null 2>&1 ||
|
||
|
{ rm -f ../../$DEST >/dev/null 2>&1 &&
|
||
|
cp "$SRC" ../../$DEST >/dev/null 2>&1
|
||
|
}
|
||
|
then
|
||
|
if (ar t ../../$DEST | grep __.SYMDEF ) >/dev/null 2>&1
|
||
|
then
|
||
|
ranlib ../../$DEST
|
||
|
fi
|
||
|
exit 0
|
||
|
else
|
||
|
echo Sorry, can not create "$DEST".
|
||
|
exit 1
|
||
|
fi
|