Jump to content

Basename: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
m Task 70: Update syntaxhighlight tags - remove use of deprecated <source> tags
Line 33: Line 33:
==Examples==
==Examples==
basename will retrieve the last name from a pathname ignoring any trailing slashes
basename will retrieve the last name from a pathname ignoring any trailing slashes
<source lang="console">
<syntaxhighlight lang="console">
$ basename /home/jsmith/base.wiki
$ basename /home/jsmith/base.wiki
base.wiki
base.wiki
Line 42: Line 42:
$ basename /
$ basename /
/
/
</syntaxhighlight>
</source>
basename can also be used to remove the end of the base name, but not the complete base name
basename can also be used to remove the end of the base name, but not the complete base name
<source lang="console">
<syntaxhighlight lang="console">
$ basename /home/jsmith/base.wiki .wiki
$ basename /home/jsmith/base.wiki .wiki
base
base
Line 53: Line 53:
$ basename /home/jsmith/base.wiki base.wiki
$ basename /home/jsmith/base.wiki base.wiki
base.wiki
base.wiki
</syntaxhighlight>
</source>


==See also==
==See also==

Revision as of 17:26, 11 May 2020

basename
Initial releaseJanuary 1979; 46 years ago (1979-01)
Operating systemUnix and Unix-like
TypeCommand
LicenseGNU GPL v3

basename is a standard computer program on Unix and Unix-like operating systems. When basename is given a pathname, it will delete any prefix up to the last slash ('/') character and return the result. basename is described in the Single UNIX Specification and is primarily used in shell scripts.

History

basename was introduced in X/Open Portability Guidelines issue 2 of 1987.

The version of basename bundled in GNU coreutils was written by David MacKenzie.[1]

Usage

The Single UNIX Specification specification for basename is.

basename string [suffix]
string
A pathname
suffix
If specified, basename will also delete the suffix.

Examples

basename will retrieve the last name from a pathname ignoring any trailing slashes

$ basename /home/jsmith/base.wiki 
base.wiki

$ basename /home/jsmith/
jsmith

$ basename /
/

basename can also be used to remove the end of the base name, but not the complete base name

$ basename /home/jsmith/base.wiki .wiki
base

$ basename /home/jsmith/base.wiki ki
base.wi

$ basename /home/jsmith/base.wiki base.wiki
base.wiki

See also

References