xref: /illumos-gate/usr/src/cmd/bnu/Install (revision c7fd2ed091e4e4beb47e1da3a6197a2c38f29c02)
1#!/usr/bin/sh
2#
3# CDDL HEADER START
4#
5# The contents of this file are subject to the terms of the
6# Common Development and Distribution License, Version 1.0 only
7# (the "License").  You may not use this file except in compliance
8# with the License.
9#
10# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
11# or http://www.opensolaris.org/os/licensing.
12# See the License for the specific language governing permissions
13# and limitations under the License.
14#
15# When distributing Covered Code, include this CDDL HEADER in each
16# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
17# If applicable, add the following below this CDDL HEADER, with the
18# fields enclosed by brackets "[]" replaced with your own identifying
19# information: Portions Copyright [yyyy] [name of copyright owner]
20#
21# CDDL HEADER END
22#
23#ident	"%Z%%M%	%I%	%E% SMI"	/* from SVR4 bnu:Install 2.3 */
24
25# This shell simulates the action of the install command that
26# is available on system V systems.
27#  It only does the part required for my makefile!
28#
29USAGE="usage: Install -f Directory [-o] [-m mode] [-u owner] [-g group] File"
30#
31# It will copy file to Directory changes the mode, owner and
32# group if specified.  If -o is used, an existing file is moved
33# to OLDfile.
34
35OLD=
36MODE=
37OWNER=
38GROUP=
39FILE=
40
41while [ $# -gt 0 ]
42do
43	case $1 in
44	-o)	OLD="OLD"
45		shift
46		;;
47
48	-f)	shift
49		DIR=$1
50		shift
51		;;
52
53	-f*)	DIR=`echo $1|sed "s/..//"`
54		shift
55		;;
56
57	-m)	shift
58		MODE=$1
59		shift
60		;;
61
62	-m*)	MODE=`echo $1|sed "s/..//"`
63		shift
64		;;
65
66	-u)	shift
67		OWNER=$1
68		shift
69		;;
70
71	-u*)	OWNER=`echo $1|sed "s/..//"`
72		shift
73		;;
74
75	-g)	shift
76		GROUP=$1
77		shift
78		;;
79
80	-g*)	GROUP=`echo $1|sed "s/..//"`
81		shift
82		;;
83
84	*)	FILE=$1
85		break
86		;;
87
88	esac
89done
90
91
92if [ -z "$FILE" -o -z "$DIR" ]; then
93	echo $USAGE
94	exit 1
95fi
96
97if [ -n "$OLD" ]; then
98	echo mv $DIR/$FILE $DIR/OLD$FILE
99	mv $DIR/$FILE $DIR/OLD$FILE
100fi
101
102rm -f $DIR/$FILE
103echo cp $FILE $DIR/$FILE
104cp $FILE $DIR/$FILE
105
106if [ -n "$GROUP" ]; then
107	echo chgrp $GROUP $DIR/$FILE
108	chgrp $GROUP $DIR/$FILE
109fi
110
111if [ -n "$MODE" ]; then
112	echo chmod $MODE $DIR/$FILE
113	chmod $MODE $DIR/$FILE
114fi
115
116
117if [ -n "$OWNER" ]; then
118	echo chown $OWNER $DIR/$FILE
119	chown $OWNER $DIR/$FILE
120fi
121
122ls -l $DIR/$FILE
123