Perl Programming Documentation
Download Perl
Explore

Manual

- Overview
- Tutorials
- FAQs
- History / Changes
- License

Reference

- Language
- Functions
- Operators
- Special Variables
- Pragmas
- Utilities
- Internals
- Platform Specific

Modules

- A • B • C • D • E
- F • G • H • I • L
- M • N • O • P • S
- T • U • X

Tools

- Preferences

# mkdir

Perl 5 version 16.0 documentation
Go to top
Show recent pages
Recently read

# mkdir

Perl functions A-Z | Perl functions by category | The 'perlfunc' manpage

- mkdir FILENAME,MASK

- mkdir FILENAME
- mkdir

  Creates the directory specified by FILENAME, with permissions specified by MASK (as modified by `umask`). If it succeeds it returns true; otherwise it returns false and sets `$!` (errno). MASK defaults to 0777 if omitted, and FILENAME defaults to `$_` if omitted.

  In general, it is better to create directories with a permissive MASK and let the user modify that with their `umask` than it is to supply a restrictive MASK and give the user no way to be more permissive. The exceptions to this rule are when the file or directory should be kept private (mail files, for instance). The perlfunc(1) entry on `umask` discusses the choice of MASK in more detail.

  Note that according to the POSIX 1003.1-1996 the FILENAME may have any number of trailing slashes. Some operating and filesystems do not get this right, so Perl automatically removes all trailing slashes to keep everyone happy.

  To recursively create a directory structure, look at the `mkpath` function of the File::Path module.