xref: /plan9/rc/bin/ape/ln (revision 2a7824990d644563b93ed8d4abf1407c40b2087a)
143751f27SDavid du Colombier#!/bin/rc
243751f27SDavid du Colombier
343751f27SDavid du Colombierargv0=$0
443751f27SDavid du Colombierforce=n
543751f27SDavid du Colombierwhile(! ~ $#* 0 && ~ $1 -*){
643751f27SDavid du Colombier	switch($1){
743751f27SDavid du Colombier	case -f
843751f27SDavid du Colombier		force=y
943751f27SDavid du Colombier	case -s
1043751f27SDavid du Colombier		;
1143751f27SDavid du Colombier	case *
1243751f27SDavid du Colombier		echo 'usage: ln [-s] [-f] source destination' >[2=1]
1343751f27SDavid du Colombier		exit 'usage'
1443751f27SDavid du Colombier	}
1543751f27SDavid du Colombier	shift
1643751f27SDavid du Colombier}
1743751f27SDavid du Colombier
18*2a782499SDavid du Colombier
19*2a782499SDavid du Colombierif(~ $force n && test -e $2 && ! test -d $2){
2043751f27SDavid du Colombier	echo ln: $2 destination exists >[2=1]
2143751f27SDavid du Colombier	exit 'usage'
2243751f27SDavid du Colombier}
2343751f27SDavid du Colombier
2443751f27SDavid du Colombierexec cp -gux $1 $2
25