dirname

BASENAME(1)                  General Commands Manual                 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
     The basename and dirname utilities exit 0 on success, and >0 if an error
     occurs.

EXAMPLES
     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 IEEE Std 1003.2
     (“POSIX.2”) compatible.

HISTORY
     The basename and dirname utilities first appeared in 4.4BSD.

macOS 12.1                        May 26, 2020                        macOS 12.1