NAME
basename —
return the last component of
a pathname
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <libgen.h>
char *
basename(
char
*path);
DESCRIPTION
The
basename() function takes the pathname pointed to by
path and returns a pointer to the final component of the
pathname, deleting any trailing ‘/’ characters.
If
path consists entirely of ‘/’ characters,
basename() returns a pointer to the string “/”.
If
path is a null pointer or points to an empty string,
basename() returns a pointer to the string “.”.
RETURN VALUES
The
basename() function returns a pointer to the final
component of
path.
SEE ALSO
basename(1),
dirname(3)
STANDARDS
- X/Open
Portability Guide Issue 4, Version 2
(“XPG4.2”)
- IEEE Std
1003.1-2001 (“POSIX.1”)
BUGS
If the length of the result is longer than
PATH_MAX
bytes (including the terminating nul), the result will be truncated.
The
basename() function returns a pointer to static storage
that may be overwritten by subsequent calls to
basename().
This is not strictly a bug; it is explicitly allowed by
IEEE
Std 1003.1-2001 (“POSIX.1”).