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
|