diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /upstream/archlinux/man1p/basename.1p | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/archlinux/man1p/basename.1p')
-rw-r--r-- | upstream/archlinux/man1p/basename.1p | 309 |
1 files changed, 309 insertions, 0 deletions
diff --git a/upstream/archlinux/man1p/basename.1p b/upstream/archlinux/man1p/basename.1p new file mode 100644 index 00000000..a641f629 --- /dev/null +++ b/upstream/archlinux/man1p/basename.1p @@ -0,0 +1,309 @@ +'\" et +.TH BASENAME "1P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" +.SH PROLOG +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. +.\" +.SH NAME +basename +\(em return non-directory portion of a pathname +.SH SYNOPSIS +.LP +.nf +basename \fIstring \fB[\fIsuffix\fB]\fR +.fi +.SH DESCRIPTION +The +.IR string +operand shall be treated as a pathname, as defined in the Base Definitions volume of POSIX.1\(hy2017, +.IR "Section 3.271" ", " "Pathname". +The string +.IR string +shall be converted to the filename corresponding to the last pathname +component in +.IR string +and then the suffix string +.IR suffix , +if present, shall be removed. This shall be done by performing actions +equivalent to the following steps in order: +.IP " 1." 4 +If +.IR string +is a null string, it is unspecified whether the resulting string is +.BR '.' +or a null string. In either case, skip steps 2 through 6. +.IP " 2." 4 +If +.IR string +is +.BR \(dq//\(dq , +it is implementation-defined whether steps 3 to 6 are skipped or +processed. +.IP " 3." 4 +If +.IR string +consists entirely of +<slash> +characters, +.IR string +shall be set to a single +<slash> +character. In this case, skip steps 4 to 6. +.IP " 4." 4 +If there are any trailing +<slash> +characters in +.IR string , +they shall be removed. +.IP " 5." 4 +If there are any +<slash> +characters remaining in +.IR string , +the prefix of +.IR string +up to and including the last +<slash> +character in +.IR string +shall be removed. +.IP " 6." 4 +If the +.IR suffix +operand is present, is not identical to the characters remaining in +.IR string , +and is identical to a suffix of the characters remaining in +.IR string , +the suffix +.IR suffix +shall be removed from +.IR string . +Otherwise, +.IR string +is not modified by this step. It shall not be considered an error if +.IR suffix +is not found in +.IR string . +.P +The resulting string shall be written to standard output. +.SH OPTIONS +None. +.SH OPERANDS +The following operands shall be supported: +.IP "\fIstring\fR" 10 +A string. +.IP "\fIsuffix\fR" 10 +A string. +.SH STDIN +Not used. +.SH "INPUT FILES" +None. +.SH "ENVIRONMENT VARIABLES" +The following environment variables shall affect the execution of +.IR basename : +.IP "\fILANG\fP" 10 +Provide a default value for the internationalization variables that are +unset or null. (See the Base Definitions volume of POSIX.1\(hy2017, +.IR "Section 8.2" ", " "Internationalization Variables" +for the precedence of internationalization variables used to determine +the values of locale categories.) +.IP "\fILC_ALL\fP" 10 +If set to a non-empty string value, override the values of all the +other internationalization variables. +.IP "\fILC_CTYPE\fP" 10 +Determine the locale for the interpretation of sequences of bytes of +text data as characters (for example, single-byte as opposed to +multi-byte characters in arguments). +.IP "\fILC_MESSAGES\fP" 10 +.br +Determine the locale that should be used to affect the format and +contents of diagnostic messages written to standard error. +.IP "\fINLSPATH\fP" 10 +Determine the location of message catalogs for the processing of +.IR LC_MESSAGES . +.SH "ASYNCHRONOUS EVENTS" +Default. +.SH STDOUT +The +.IR basename +utility shall write a line to the standard output in the following +format: +.sp +.RS 4 +.nf + +"%s\en", <\fIresulting string\fP> +.fi +.P +.RE +.SH STDERR +The standard error shall be used only for diagnostic messages. +.SH "OUTPUT FILES" +None. +.SH "EXTENDED DESCRIPTION" +None. +.SH "EXIT STATUS" +The following exit values shall be returned: +.IP "\00" 6 +Successful completion. +.IP >0 6 +An error occurred. +.SH "CONSEQUENCES OF ERRORS" +Default. +.LP +.IR "The following sections are informative." +.SH "APPLICATION USAGE" +The definition of +.IR pathname +specifies implementation-defined behavior for pathnames starting with +two +<slash> +characters. Therefore, applications shall not arbitrarily add +<slash> +characters to the beginning of a pathname unless they can ensure +that there are more or less than two or are prepared to deal with the +implementation-defined consequences. +.SH EXAMPLES +If the string +.IR string +is a valid pathname: +.sp +.RS 4 +.nf + +$(basename -- "\fIstring\fP") +.fi +.P +.RE +.P +produces a filename that could be used to open the file named by +.IR string +in the directory returned by: +.sp +.RS 4 +.nf + +$(dirname -- "\fIstring\fP") +.fi +.P +.RE +.P +If the string +.IR string +is not a valid pathname, the same algorithm is used, but the result +need not be a valid filename. The +.IR basename +utility is not expected to make any judgements about the validity of +.IR string +as a pathname; it just follows the specified algorithm to produce a +result string. +.P +The following shell script compiles +.BR /usr/src/cmd/cat.c +and moves the output to a file named +.BR cat +in the current directory when invoked with the argument +.BR /usr/src/cmd/cat +or with the argument +.BR /usr/src/cmd/cat.c : +.sp +.RS 4 +.nf + +c99 -- "$(dirname -- "$1")/$(basename -- "$1" .c).c" && +mv a.out "$(basename -- "$1" .c)" +.fi +.P +.RE +.P +The EXAMPLES section of the +\fIbasename\fR() +function (see the System Interfaces volume of POSIX.1\(hy2017, +.IR "\fIbasename\fR\^(\|)") +includes a table showing examples of the results of processing several +sample pathnames by the +\fIbasename\fR() +and +\fIdirname\fR() +functions and by the +.IR basename +and +.IR dirname +utilities. +.SH RATIONALE +The behaviors of +.IR basename +and +.IR dirname +have been coordinated so that when +.IR string +is a valid pathname: +.sp +.RS 4 +.nf + +$(basename -- "\fIstring\fP") +.fi +.P +.RE +.P +would be a valid filename for the file in the directory: +.sp +.RS 4 +.nf + +$(dirname -- "\fIstring\fP") +.fi +.P +.RE +.P +This would not work for the early proposal versions of these utilities due +to the way it specified handling of trailing +<slash> +characters. +.P +Since the definition of +.IR pathname +specifies implementation-defined behavior for pathnames starting with +two +<slash> +characters, this volume of POSIX.1\(hy2017 specifies similar implementation-defined behavior +for the +.IR basename +and +.IR dirname +utilities. +.SH "FUTURE DIRECTIONS" +None. +.SH "SEE ALSO" +.IR "Section 2.5" ", " "Parameters and Variables", +.IR "\fIdirname\fR\^" +.P +The Base Definitions volume of POSIX.1\(hy2017, +.IR "Section 3.271" ", " "Pathname", +.IR "Chapter 8" ", " "Environment Variables" +.P +The System Interfaces volume of POSIX.1\(hy2017, +.IR "\fIbasename\fR\^(\|)", +.IR "\fIdirname\fR\^(\|)" +.\" +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1-2017, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 7, 2018 Edition, +Copyright (C) 2018 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 . +.PP +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.kernel.org/doc/man-pages/reporting_bugs.html . |