In this article, we will create a directory using NodeJS.
NodeJS has Filesystem(fs) core module, which enables interacting with the file system, has Node.js fs.mkdir() method or Node.js fs.mkdirSync() method method, to create new directory /parent directory.
Node.js fs.mkdir() method: Let’s create a new directory using fs.mkdir() method. Initially, we have single file index.js, as we can see in the given image.
Example: Edit the index.js file.
const fs = require( "fs" );
const path = "./new-Directory" ;
fs.access(path, (error) => { // To check if the given directory
// already exists or not
if (error) {
// If current directory does not exist
// then create it
fs.mkdir(path, (error) => {
if (error) {
console.log(error);
} else {
console.log( "New Directory created successfully !!" );
}
});
} else {
console.log( "Given Directory already exists !!" );
}
}); |
Output:
- You can check the terminal output.
- After executing the above code, node.js will create a new directory if it does not exist. A new Directory named — “new-Directory” is created.
Creating Parent Directories: If we want to create multilevel directory, fs.mkdir() has optional recursive Boolean value we can pass as a parameter.
const fs = require( "fs" );
// Multilevel directory const path = "./directory1/directory2/new-directory" ;
fs.access(path, (error) => { // To check if given directory
// already exists or not
if (error) {
// If current directory does not exist then create it
fs.mkdir(path, { recursive: true }, (error) => {
if (error) {
console.log(error);
} else {
console.log( "New Directory created successfully !!" );
}
});
} else {
console.log( "Given Directory already exists !!" );
}
}); |
Output:
- New Directory created successfully.
-
We can see that a multilevel directory “directory1\directory2\new-directory” is created.
Removing a folder: If we want to delete a given directory, we can use Node.js fs.rmdir() Method or Node.js fs.rmdirSync() Method, it will become complicated if the directory contain some file content.
So we can use a third party package fs-extra provided by npm to delete the given directory. Let’s install the given package using npm.
Run the following command in your command line
npm install fs-extra
Example: Now run the following code to delete the given directory
const fs1 = require( "fs-extra" );
const path = "./directory1" ;
fs1.remove(path, (error) => { if (error) {
console.log(error);
} else {
console.log( "Folder Deleted Successfully !!" );
}
}); |
Output
Node.js fs.mkdirSync() method: Let’s create a new directory using fs.mkdirSync() method. Initially, we have single file index.js, as we can see in the given image.
Example:
const fs1 = require( "fs-extra" );
// 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!" );
}); |
Output: