basename(1) basename(1)
NAME
basename, dirname - deliver portions of path names
SYNOPSIS
basename string [suffix]
dirname string
DESCRIPTION
basename deletes any prefix ending in / and the suffix (if
present in string) from string, and prints the result on the
standard output. It is normally used inside substitution
marks (` `) within shell procedures. The suffix is a pattern
as defined on the ed(1) manual page. Trailing slashes are
stripped. Several degenerate cases should be mentioned.
basename / returns / (a single slash), while basename invoked
with an empty string, "", or with no string at all, returns .
(a single dot).
dirname delivers all but the last level of the path name in
string.
The LC_CTYPE environment variable defines the codesets used in
the pathname [see LANG on environ(5)].
EXAMPLES
The following example, invoked with the string
/home/sms/personal/mail sets the environment variable NAME to
the file named mail and the environment variable MYMAILPATH to
the string /home/sms/personal.
NAME=`basename $HOME/personal/mail`
MYMAILPATH=`dirname $HOME/personal/mail`
This shell procedure, invoked with the argument
/usr/src/bin/cat.c, compiles the named file and moves the
output to cat in the current directory:
cc $1
mv a.out `basename $1 .c`
Files
/usr/lib/locale/locale/LC_MESSAGES/uxcore
language-specific message file [see LANG on environ(5)].
REFERENCES
ed(1), sh(1)
Copyright 1994 Novell, Inc. Page 1