#!/usr/bin/env osh : : osh - " Force sh(1), csh(1), and other shells to exit w/ error! " <'' ;;; : : " @(#)$Id: d998458fa0a1699a3ebc75310499b32247dca504 $ " : : " The author of this file, J.A. Neitzel , " : " hereby grants it to the public domain. " : : : " Print the filename portion of a pathname. " : : " usage: basename string [suffix] " : : " Check for correct usage. " : >>$0'' <'' ; : >>$1'' <'' ; : >>$2'' <'' killer $0 basename if $n != 1 -a $n != 2 if { exit } pusage $0 '"string [suffix]"' if X$1 = X if { exit } echo echo $1 | tr -d / | grep '^$' >/dev/null if $s = 0 if { exit } echo / if X$2 = X goto No_Suffix echo $1 | sed 's,/*$,, ; s,^.*/,, ; s,.*,if X& = X'$2, | osh - if $s = 0 goto No_Suffix echo $1 | sed 's,/*$,,' | grep -- $2\$ >/dev/null if $s != 0 goto No_Suffix echo $1 | sed 's,/*$,,' | grep / >/dev/null if $s = 0 goto Directory_Prefix echo $1 | sed 's,/*$,, ; s,^\(.*\)'$2'$,\1,' ; exit : Directory_Prefix echo $1 | sed 's,/*$,, ; s,^.*/\(.*\)'$2'$,\1,' ; exit : No_Suffix echo $1 | sed 's,/*$,, ; s,^.*/,,'