|  | #! /bin/sh | 
|  | # | 
|  | #	@(#)install.sh	4.5	(Berkeley)	10/12/83 | 
|  | # | 
|  | cmd=/bin/mv | 
|  | strip="" | 
|  | chmod="chmod 755" | 
|  | if [ "`uname -s`" = "HP-UX" ] ; then | 
|  | chown="chown root" | 
|  | chgrp="chgrp bin" | 
|  | else | 
|  | chown="chown -f root" | 
|  | chgrp="chgrp -f bin" | 
|  | fi | 
|  | while true ; do | 
|  | case $1 in | 
|  | -s )	strip="strip" | 
|  | shift | 
|  | ;; | 
|  | -c )	cmd="cp" | 
|  | shift | 
|  | ;; | 
|  | -m )	chmod="chmod $2" | 
|  | shift | 
|  | shift | 
|  | ;; | 
|  | -o )	chown="chown -f $2" | 
|  | shift | 
|  | shift | 
|  | ;; | 
|  | -g )	chgrp="chgrp -f $2" | 
|  | shift | 
|  | shift | 
|  | ;; | 
|  | -d )	cmd="mkdir" | 
|  | shift | 
|  | ;; | 
|  | * )	break | 
|  | ;; | 
|  | esac | 
|  | done | 
|  |  | 
|  | if [ ! ${2-""} ] | 
|  | then	echo "install: no destination specified" | 
|  | exit 1 | 
|  | fi | 
|  | if [ ${3-""} ] | 
|  | then	echo "install: too many files specified -> $*" | 
|  | exit 1 | 
|  | fi | 
|  | if [ $1 = $2 -o $2 = . ] | 
|  | then	echo "install: can't move $1 onto itself" | 
|  | exit 1 | 
|  | fi | 
|  | case $cmd in | 
|  | /bin/mkdir ) | 
|  | file=$2/$1 | 
|  | ;; | 
|  | * ) | 
|  | if [ '!' -f $1 ] | 
|  | then	echo "install: can't open $1" | 
|  | exit 1 | 
|  | fi | 
|  | if [ -d $2 ] | 
|  | then	file=$2/$1 | 
|  | else	file=$2 | 
|  | fi | 
|  | /bin/rm -f $file | 
|  | ;; | 
|  | esac | 
|  |  | 
|  | case $cmd in | 
|  | /bin/mkdir ) | 
|  | if [ ! -d "$file" ] | 
|  | then	$cmd $file | 
|  | fi | 
|  | ;; | 
|  | * ) | 
|  | $cmd $1 $file | 
|  | if [ $strip ] | 
|  | then	$strip $file | 
|  | fi | 
|  | ;; | 
|  | esac | 
|  |  | 
|  | $chown $file | 
|  | $chgrp $file | 
|  | $chmod $file |