diff options
Diffstat (limited to 'man3p/basename.3p')
-rw-r--r-- | man3p/basename.3p | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/man3p/basename.3p b/man3p/basename.3p new file mode 100644 index 000000000..aba37f64f --- /dev/null +++ b/man3p/basename.3p @@ -0,0 +1,104 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "BASENAME" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" basename +.SH NAME +basename \- return the last component of a pathname +.SH SYNOPSIS +.LP +\fB#include <libgen.h> +.br +.sp +char *basename(char *\fP\fIpath\fP\fB); \fP +\fB +.br +\fP +.SH DESCRIPTION +.LP +The \fIbasename\fP() function shall take the pathname pointed to by +\fIpath\fP and return a pointer to the final component of +the pathname, deleting any trailing \fB'/'\fP characters. +.LP +If the string consists entirely of the \fB'/'\fP character, \fIbasename\fP() +shall return a pointer to the string +\fB"/"\fP . If the string is exactly \fB"//"\fP , it is implementation-defined +whether \fB'/'\fP or \fB"//"\fP is +returned. +.LP +If \fIpath\fP is a null pointer or points to an empty string, \fIbasename\fP() +shall return a pointer to the string +\fB"."\fP . +.LP +The \fIbasename\fP() function may modify the string pointed to by +\fIpath\fP, and may return a pointer to static storage that +may then be overwritten by a subsequent call to \fIbasename\fP(). +.LP +The \fIbasename\fP() function need not be reentrant. A function that +is not required to be reentrant is not required to be +thread-safe. +.SH RETURN VALUE +.LP +The \fIbasename\fP() function shall return a pointer to the final +component of \fIpath\fP. +.SH ERRORS +.LP +No errors are defined. +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.SS Using basename() +.LP +The following program fragment returns a pointer to the value \fIlib\fP, +which is the base name of \fB/usr/lib\fP. +.sp +.RS +.nf + +\fB#include <libgen.h> +\&... +char *name = "/usr/lib"; +char *base; +.sp + +base = basename(name); +\&... +\fP +.fi +.RE +.SS Sample Input and Output Strings for basename() +.LP +In the following table, the input string is the value pointed to by +\fIpath\fP, and the output string is the return value of +the \fIbasename\fP() function. +.TS C +center; l l. +\fBInput String\fP \fBOutput String\fP +"/usr/lib" "lib" +"/usr/" "usr" +"/" "/" +"///" "/" +"//usr//lib//" "lib" +.TE +.SH APPLICATION USAGE +.LP +None. +.SH RATIONALE +.LP +None. +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIdirname\fP() , the Base Definitions volume of IEEE\ Std\ 1003.1-2001, +\fI<libgen.h>\fP, the Shell and Utilities volume of IEEE\ Std\ 1003.1-2001, +\fIbasename\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |