BASENAME(1)

NAME
basename, dirname - return filename or directory portion of pathname

SYNOPSIS
basename string [suffix]
basename [-a] [-s suffix] string [...]
dirname string [...]

DESCRIPTION
The basename utility deletes any prefix ending with the last slash ‘/’ character present in string (after first stripping trailing slashes), and a suffix, if given. The suffix is not stripped if it is identical to the remaining characters in string. The resulting filename is written to the standard output. A non-existent suffix is ignored. If -a is specified, then every argument is treated as a string as if basename were invoked with just one argument. If -s is specified, then the suffix is taken as its argument, and all other arguments are treated as a string.

The dirname utility deletes the filename portion, beginning with the last slash ‘/’ character to the end of string (after first stripping trailing slashes), and writes the result to the standard output.

EXIT STATUS

EXAMPLES
basename together with -a interprets the second argument as a string and produces "foo" followed by "bar" for:

    basename -a /usr/bin/foo /sbin/bar

Passing multiple arguments to dirname produces /usr/bin followed by /sbin

    dirname /usr/bin/foo /sbin/bar

The following line sets the shell variable FOO to /usr/bin.

    FOO=`dirname /usr/bin/trail`

SEE ALSO
csh(1), sh(1), basename(3), dirname(3)

STANDARDS
The basename and dirname utilities are expected to be p1003.2 compatible.