mkdir.1p (7487B)
- '\" et
- .TH MKDIR "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
- mkdir
- \(em make directories
- .SH SYNOPSIS
- .LP
- .nf
- mkdir \fB[\fR-p\fB] [\fR-m \fImode\fB] \fIdir\fR...
- .fi
- .SH DESCRIPTION
- The
- .IR mkdir
- utility shall create the directories specified by the operands, in the
- order specified.
- .P
- For each
- .IR dir
- operand, the
- .IR mkdir
- utility shall perform actions equivalent to the
- \fImkdir\fR()
- function defined in the System Interfaces volume of POSIX.1\(hy2017, called with the following arguments:
- .IP " 1." 4
- The
- .IR dir
- operand is used as the
- .IR path
- argument.
- .IP " 2." 4
- The value of the bitwise-inclusive OR of S_IRWXU, S_IRWXG, and S_IRWXO
- is used as the
- .IR mode
- argument. (If the
- .BR \-m
- option is specified, the value of the
- \fImkdir\fR()
- .IR mode
- argument is unspecified, but the directory shall at no time
- have permissions less restrictive than the
- .BR \-m
- .IR mode
- option-argument.)
- .SH OPTIONS
- The
- .IR mkdir
- utility shall conform to the Base Definitions volume of POSIX.1\(hy2017,
- .IR "Section 12.2" ", " "Utility Syntax Guidelines".
- .P
- The following options shall be supported:
- .IP "\fB\-m\ \fImode\fR" 10
- Set the file permission bits of the newly-created directory to the
- specified
- .IR mode
- value. The
- .IR mode
- option-argument shall be the same as the
- .IR mode
- operand defined for the
- .IR chmod
- utility. In the
- .IR symbolic_mode
- strings, the
- .IR op
- characters
- .BR '\(pl'
- and
- .BR '\-'
- shall be interpreted relative to an assumed initial mode of
- .IR a =\c
- .IR rwx ;
- .BR '\(pl'
- shall add permissions to the default mode,
- .BR '\-'
- shall delete permissions from the default mode.
- .IP "\fB\-p\fP" 10
- Create any missing intermediate pathname components.
- .RS 10
- .P
- For each
- .IR dir
- operand that does not name an existing directory, before performing the
- actions described in the DESCRIPTION above, the
- .IR mkdir
- utility shall create any pathname components of the path prefix of
- .IR dir
- that do not name an existing directory by performing actions equivalent
- to first calling the
- \fImkdir\fR()
- function with the following arguments:
- .IP " 1." 4
- A pathname naming the missing pathname component, ending with a trailing
- <slash>
- character, as the
- .IR path
- argument
- .IP " 2." 4
- The value zero as the
- .IR mode
- argument
- .P
- and then calling the
- \fIchmod\fR()
- function with the following arguments:
- .IP " 1." 4
- The same
- .IR path
- argument as in the
- \fImkdir\fR()
- call
- .IP " 2." 4
- The value
- .IR "(S_IWUSR|S_IXUSR|\(ti\fIfilemask\fP)&0777" \fR
- as the
- .IR mode
- argument, where
- .IR filemask
- is the file mode creation mask of the process (see the System Interfaces volume of POSIX.1\(hy2017,
- .IR "\fIumask\fR\^(\|)")
- .P
- Each
- .IR dir
- operand that names an existing directory shall be ignored without
- error.
- .RE
- .SH OPERANDS
- The following operand shall be supported:
- .IP "\fIdir\fR" 10
- A pathname of a directory to be created.
- .SH STDIN
- Not used.
- .SH "INPUT FILES"
- None.
- .SH "ENVIRONMENT VARIABLES"
- The following environment variables shall affect the execution of
- .IR mkdir :
- .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
- Not used.
- .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
- All the specified directories were created successfully, or the
- .BR \-p
- option was specified and all the specified directories either already
- existed or were created successfully.
- .IP >0 6
- An error occurred.
- .SH "CONSEQUENCES OF ERRORS"
- Default.
- .LP
- .IR "The following sections are informative."
- .SH "APPLICATION USAGE"
- The default file mode for directories is
- .IR a =\c
- .IR rwx
- (777 on most systems) with selected permissions removed in accordance
- with the file mode creation mask. For intermediate pathname components
- created by
- .IR mkdir ,
- the mode is the default modified by
- .IR u +\c
- .IR wx
- so that the subdirectories can always be created regardless of the file
- mode creation mask; if different ultimate permissions are desired for
- the intermediate directories, they can be changed afterwards with
- .IR chmod .
- .P
- Note that some of the requested directories may have been created even
- if an error occurs.
- .SH EXAMPLES
- None.
- .SH RATIONALE
- The System V
- .BR \-m
- option was included to control the file mode.
- .P
- The System V
- .BR \-p
- option was included to create any needed intermediate directories and
- to complement the functionality provided by
- .IR rmdir
- for removing directories in the path prefix as they become empty.
- Because no error is produced if any path component already exists, the
- .BR \-p
- option is also useful to ensure that a particular directory exists.
- .P
- The functionality of
- .IR mkdir
- is described substantially through a reference to the
- \fImkdir\fR()
- function in the System Interfaces volume of POSIX.1\(hy2017. For example, by default, the mode of the
- directory is affected by the file mode creation mask in accordance with
- the specified behavior of the
- \fImkdir\fR()
- function. In this way, there is less duplication of effort required for
- describing details of the directory creation.
- .SH "FUTURE DIRECTIONS"
- None.
- .SH "SEE ALSO"
- .IR "\fIchmod\fR\^",
- .IR "\fIrm\fR\^",
- .IR "\fIrmdir\fR\^",
- .IR "\fIumask\fR\^"
- .P
- The Base Definitions volume of POSIX.1\(hy2017,
- .IR "Chapter 8" ", " "Environment Variables",
- .IR "Section 12.2" ", " "Utility Syntax Guidelines"
- .P
- The System Interfaces volume of POSIX.1\(hy2017,
- .IR "\fImkdir\fR\^(\|)",
- .IR "\fIumask\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 .