mkdir command in Linux with examples

One of the most common and fundamental commands in Linux is the mkdir command. The most basic way to use this command is to create one or multiple directories. If you’re coming from Windows as a newcomer to Linux, you probably know directories as folders. The mkdir command can do a few other things with directories as well.

The mkdir command can set the permissions for a specified directory or multiple directories. To use the mkdir command, the user must have permission to create directories in the parent directory. Attempting to use mkdir command without these permissions will result in a “permission denied” error.

While the mkdir command is one of the most basic Linux commands, it can still get a little more complex than we’ve explained so far with its many different options that you can use to create and edit directories. You’ll find a few of these options very helpful, although that isn’t to say that mkdir on its own doesn’t already cover a wide array of administration situations.

In this tutorial, you’ll learn how to use the mkdir command in Linux through examples. Follow along below to learn about the various options that you can use with this command.

In this tutorial you will learn:

  • How to use the mkdir command on Linux
mkdir command in Linux with examples
mkdir command in Linux with examples
Software Requirements and Linux Command Line Conventions
Category Requirements, Conventions or Software Version Used
System Any Linux distro
Software mkdir
Other Privileged access to your Linux system as root or via the sudo command.
Conventions # – requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ – requires given linux commands to be executed as a regular non-privileged user

Frequently Used Options

The mkdir command creates a directory in the current working directory, unless some other path is specified. The options you can use with mkdir are mostly just to create and edit directories in various, specific ways to meet certain needs and provide extra information.

mkdir command in Linux Basic Examples

  1. Running the mkdir command by itself, without any additional options, will just create a directory in your present working directory. The current directory is the directory in which a user is working at a given time.
    $ mkdir directory01
    
    Running the mkdir command followed by a directory name will create the directory
    Running the mkdir command followed by a directory name will create the directory

    As you can see in the screenshot above, we have succesfully created a new directory. This output will always be the same, in which the mkdir command silently creates a directory in the background, if you run mkdir without any additional options. You can change this result by using one of the various options with mkdir. We’ll cover that in the next example.

  2. Using the -v (verbose) option, we can get the mkdir command to tell us what it is doing in the background so we can see it in action. In the example below, we’ll show you how to use the syntax in your Linux terminal to get this output.
    $ mkdir -v directory02
    
    Using the -v option to view what the mkdir command is doing in the background
    Using the -v option to view what the mkdir command is doing in the background

    As you can see in the screenshot above, the output from mkdir -vcreates a directory and tells us what it did in the background.

  3. In the examples above, we’ve shown how the mkdir command can be used to create a directory. But as you’ll recall from the introduction of this post, the mkdir command can create multiple directories at a time. We can achieve this by typing more than one directory following the mkdir command.
    $ mkdir directory03 directory04
    
    Using mkdir to create multiple directories
    Using mkdir to create multiple directories

    As you can see in the screenshot above, creating multiple directories can be achieved by typing each directory name after the command.

Advanced Usage

The mkdir command is pretty simple. But as you’ve observed throughout the examples section of this article, there are many other options we can use with it. Many of these options are sometimes overlooked, and even some experienced system administrators may not know them. However, they can come in handy in various situations. In this section, we’ll show you a few of the lesser-known options of the mkdir command that we think are useful.

mkdir command in Linux Advanced Examples

  1. Another way you can use the mkdir command is to tell the created directories to give read, write, and execute permissions for the contents of the created directories. This command-line option is essential for system administrating. So, committing this to memory will benefit you greatly if you’re in this line of work. In the syntax below, you’ll notice we used a=rwx. This is just how the permissions we mentioned above are specified.
    $ mkdir -m a=rwx
    
    Using the -m option to grant directory permissions to users
    Using the -m option to grant directory permissions to users

    As you can see in the screenshot above, the -m option lets us grant all users permissions to read from, write to, and execute the contents of the directories that we created.

  2. Use the --version option to display the version number and some additional information about the license and exits.
    $ mkdir --version
    
    The ---version option will print license and version number information
    The —version option will print license and version number information
  3. Now that you know how to use the mkdir command to create multiple directories, we can start learning how to use the -p option for creating parent directories. By default, using the mkdir command to make parent directories will cause the command to display the following message
    Using mkdir without the -p option to create parent directories displays an error message
    Using mkdir without the -p option to create parent directories displays an error message

    If we use the -p option, the mkdir command is able to create the directories and will not display an error message.

    $ mkdir -p directory1/directory2/directory3
    
    Using the -p option allows you to create parent directories
    Using the -p option allows you to create parent directories

    Using the -p option, the mkdir command was able to create the directory1/directory2/directory3 directories without getting an error message.

Closing Thoughts

In this tutorial, we learned all about the mkdir command on Linux. The mkdir command is important to master for personal use and system administration to create and edit directories. It’s especially useful for granting access to users read, write, and execute permissions by appending the -m option.