Mac Developer Library Developer
Search

 

This manual page is part of Xcode Tools version 5.0

To obtain these tools:

If you are running a version of Xcode Tools other than 5.0, view the documentation locally:

  • In Xcode

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.




BASENAME(3)              BSD Library Functions Manual              BASENAME(3)

NAME
     basename -- extract the base portion of a pathname

SYNOPSIS
     #include <libgen.h>

     char *
     basename(char *path);

DESCRIPTION
     The basename() function returns the last component from the pathname pointed to by path, deleting any
     trailing `/' characters.  If path consists entirely of `/' characters, a pointer to the string "/" is
     returned.  If path is a null pointer or the empty string, a pointer to the string "." is returned.

RETURN VALUES
     On successful completion, basename() returns a pointer to the last component of path.

     If basename() fails, a null pointer is returned and the global variable errno is set to indicate the
     error.

ERRORS
     The following error codes may be set in errno:

     [ENAMETOOLONG]     The path component to be returned was larger than MAXPATHLEN.

WARNINGS
     The basename() function returns a pointer to internal static storage space that will be overwritten by
     subsequent calls.  The function may modify the string pointed to by path.

LEGACY SYNOPSIS
     #include <libgen.h>

     char *
     basename(const char *path);

     In legacy mode, path will not be changed.

SEE ALSO
     basename(1), dirname(1), dirname(3), compat(5)

STANDARDS
     The basename() function conforms to X/Open Portability Guide Issue 4, Version 2 (``XPG4.2'').

HISTORY
     The basename() function first appeared in OpenBSD 2.2 and FreeBSD 4.2.

AUTHORS
     Todd C. Miller <Todd.Miller@courtesan.com>

BSD                             August 17, 1997                            BSD

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.

Feedback