basename man page on Archlinux

Man page or keyword search:  
man Server   11224 pages
apropos Keyword Search (all sections)
Output format
Archlinux logo
[printable version]

BASENAME(3P)		   POSIX Programmer's Manual		  BASENAME(3P)

       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
       implementation of this interface may differ (consult the	 corresponding
       Linux  manual page for details of Linux behavior), or the interface may
       not be implemented on Linux.

       basename — return the last component of a pathname

       #include <libgen.h>

       char *basename(char *path);

       The basename() function shall take the pathname pointed to by path  and
       return  a  pointer to the final component of the pathname, deleting any
       trailing '/' characters.

       If the string pointed to by path consists entirely of the  '/'  charac‐
       ter,  basename()	 shall	return	a  pointer  to the string "/".	If the
       string pointed to by path is exactly "//", it is implementation-defined
       whether '/' or "//" is returned.

       If  path	 is  a	null  pointer or points to an empty string, basename()
       shall return a pointer to the string ".".

       The basename() function may modify the string pointed to by  path,  and
       may return a pointer to internal storage. The returned pointer might be
       invalidated or the storage might be overwritten by a subsequent call to

       The basename() function need not be thread-safe.

       The  basename()	function shall return a pointer to the final component
       of path.

       No errors are defined.

       The following sections are informative.

   Using basename()
       The following program fragment returns a	 pointer  to  the  value  lib,
       which is the base name of /usr/lib.

	   #include <libgen.h>
	   char *name = "/usr/lib";
	   char *base;

	   base = basename(name);

   Sample Input and Output Strings for basename()
       In  the	following  table,  the input string is the value pointed to by
       path, and the output string is the return value of the basename() func‐

			  │ Input String  │ Output String │
			  │"/usr/lib"	  │ "lib"	  │
			  │"/usr/"	  │ "usr"	  │
			  │"/"		  │ "/"		  │
			  │"///"	  │ "/"		  │
			  │"//usr//lib//" │ "lib"	  │




       The Base Definitions volume of POSIX.1‐2008, <libgen.h>

       The Shell and Utilities volume of POSIX.1‐2008, basename

       Portions	 of  this text are reprinted and reproduced in electronic form
       from IEEE Std 1003.1, 2013 Edition, Standard for Information Technology
       --  Portable  Operating	System	Interface (POSIX), The Open Group Base
       Specifications Issue 7, Copyright (C) 2013 by the Institute of Electri‐
       cal  and	 Electronics  Engineers,  Inc  and  The	 Open Group.  (This is
       POSIX.1-2008 with the 2013 Technical Corrigendum	 1  applied.)  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 .

       Any typographical or formatting errors that appear  in  this  page  are
       most likely to have been introduced during the conversion of the source
       files to man page format. To report such errors,	 see  https://www.ker‐ .

IEEE/The Open Group		     2013			  BASENAME(3P)

List of man pages available for Archlinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net