Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > M


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


mkdir — make a directory


mkdir [-p] [-m mode] dirname ...


mkdir creates specified directories in mode 0777 (possibly altered by umask unless specified otherwise by a -m mode option (see umask(1)). Standard entries, . (for the directory itself) and .. (for its parent) are created automatically. If dirname already exists, mkdir exits with a diagnostic message, and the directory is not changed.


mkdir recognizes the following command-line options:

-m mode

After creating the directory as specified, the file permissions are set to mode, which is a symbolic mode string as defined for chmod (see chmod(1)). The -m has precedence over umask(1).


Intermediate directories are created as necessary. Otherwise, the full path prefix of dirname must already exist. mkdir requires write permission in the parent directory.

For each directory name in the pathname prefix of the dirname argument that is not the name of an existing directory, the specified directory is created using the current umask setting, except that the equivalent of chmod u+wx is done on each component to ensure that mkdir can create lower directories regardless of the setting of umask. Each directory name in the pathname prefix of the dirname argument that matches an existing directory is ignored without error. If an intermediate path component exists, but has permissions set to prevent writing or searching, mkdir fails with an error message.

If the -m option is used, the directory specified by dirname (excluding directories in the pathname prefix) is created with the permissions specified by mode.

Only LINK_MAX subdirectories can be created (see limits(5)).

Access Control Lists - JFS File Systems Only

If the parent directory has an access control list (ACL, see aclv(5)), and that ACL contains default entries, an ACL is created for the new directory, and the parent directory's default entries are applied to the new directory's ACL, both as regular entries and as default entries.


For information about the UNIX standard environment, see standards(5).

Environment Variables

LANG provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the default value of "C" (see lang(5)) is used. If any of the internationalization variables contains an invalid setting, mkdir will behave as if all internationalization variables are set to C. See environ(5).

LC_ALL If set to a non-empty string value, overrides the values of all the other internationalization variables.

LC_CTYPE determines the interpretation of text as single and/or multi-byte characters, the classification of characters as printable, and the characters matched by character class expressions in regular expressions.

LC_MESSAGES determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error and informative messages written to standard output.

NLSPATH determines the location of message catalogues for the processing of LC_MESSAGES.

International Code Set Support

Single- and multi-byte character code sets are supported.


mkdir returns exit code 0 if all directories were created successfully. Otherwise, it prints a diagnostic and returns non-zero.

mkdir returns exit code 0 if the -p option was specified, and all the specified directories now exist. If any of the intermediate directories do not have search or write permission (with the -p option), mkdir prints a diagnostic and returns non-zero.


Create directory gem beneath existing directory raw in the current directory:

mkdir raw/gem

Create directory path raw/gem/diamond underneath the current directory and set permissions on directory diamond to read-only for all users (a=r):

mkdir -p -m "a=r" raw/gem/diamond

which is equivalent to (see chmod(1)):

mkdir -p -m 444 raw/gem/diamond

If directories raw or raw and gem already exist, only the missing directories in the specified path are created.


mkdir: SVID2, SVID3, XPG2, XPG3, XPG4, POSIX.2

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.