Node.js fs.mkdirSync() Method
The fs.mkdirSync() method is an inbuilt application programming interface of fs module which provides an API for interacting with the file system in a manner closely modeled around standard POSIX functions.
fs.mkdirSync() Method
The fs.mkdirSync() method is used to create a directory Synchronously. If the directory already exists, an error is thrown unless the recursive option is set to true, which allows the creation of nested directories.
Syntax:
fs.mkdirSync( path, options )
Parameters:
This method accept two parameters as mentioned above and described below:
- path: The path at which directory is to be created. It can be string, buffer, etc.
- options: It is an optional parameter which determines how to create directory like recursively, etc.
Return value: It returns undefined. Below examples illustrate the use of fs.mkdirSync() method in Node.js
Example 1: This example demonstrates how to check for the existence of a directory and create it if it doesn’t exist using Node.js fs.exists() and fs.mkdirSync() methods.
// Node.js program to demonstrate the
// fs.mkdirSync() method
const fs = require("fs");
const path = require("path");
// Using fs.exists() method to
// check that the directory exists or not
console.log("Checking for directory "
+ path.join(__dirname, "Geeks"));
fs.exists(
path.join(__dirname, "Geeks"),
(exists) => {
console.log(
exists ?
"The directory already exists"
: "Not found!"
);
});
// Using fs.mkdirSync() method
// to create the directory
fs.mkdirSync(path.join(__dirname, "Geeks"));
// Using fs.exists() method to
// check that the directory exists or not
fs.exists(
path.join(__dirname, "Geeks"),
(exists) => {
console.log(
exists ?
"The directory already exists"
: "Not found!"
);
});
Output:
Checking for directory c:\Users\Suraj\node\Geeks
Not found!
The directory already exists
Example 2: This example checks for a directory’s existence, creates it recursively if it doesn’t exist, and verifies its creation using Node.js fs.exists()
and fs.mkdirSync()
methods
// Node.js program to demonstrate the
// fs.mkdirSync() method
const fs = require("fs");
const path = require("path");
// Using fs.exists() method to
// check that the directory exists or not
console.log(
"Checking for directory"
+ path.join(__dirname, "Tisu")
);
fs.exists(path.join(__dirname, "Tisu"),
exists => {
console.log(
exists ?
"The directory already exists"
: "Not found!"
);
});
// Using fs.mkdirSync() method
// to create the directory recursively
fs.mkdirSync(path.join(__dirname, "Tisu"), true);
// Using fs.exists() method to
// check that the directory exists or not
fs.exists(
path.join(__dirname, "Tisu"),
exists => {
console.log(
exists ?
"The directory already exists"
: "Not found!"
);
});
The above program will compile and run by using the below command.
node index.js
Output:
Checking for directory c:\Users\Suraj\node\Tisu
Not found!
The directory already exists
Summary
The fs.mkdirSync() method is a straightforward way to create directories synchronously in Node.js, especially useful when you need to ensure the existence of directories before proceeding with file operations.