Как создать каталог с помощью NodeJS?

Опубликовано: 26 Июля, 2021

В этой статье мы создадим каталог с помощью NodeJS.

NodeJS имеет основной модуль Filesystem (fs) , который позволяет взаимодействовать с файловой системой, имеет метод Node.js fs.mkdir () или метод метода Node.js fs.mkdirSync () для создания нового каталога / родительского каталога.

Метод Node.js fs.mkdir (): создадим новый каталог с помощью метода fs.mkdir () . Изначально у нас есть один файл index.js, как мы видим на данном изображении.

index.js

Пример: отредактируйте файл index.js.

Javascript




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 !!" );
}
});

Выход:

  • Вы можете проверить вывод терминала.

  • После выполнения вышеуказанного кода node.js создаст новый каталог, если он не существует. Будет создан новый каталог с именем « new-Directory ».

Создание родительских каталогов: если мы хотим создать многоуровневый каталог, fs.mkdir () имеет необязательное рекурсивное логическое значение, которое мы можем передать в качестве параметра.

Javascript




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 !!" );
}
});

Выход:

  • Новый каталог успешно создан.

    index.js

  • Мы видим, что создан многоуровневый каталог « directory1 directory2 new-directory ».

    index.js

Удаление папки: если мы хотим удалить данный каталог, мы можем использовать метод Node.js fs.rmdir () или метод Node.js fs.rmdirSync (), это усложнится, если каталог будет содержать некоторое содержимое файла.

Таким образом, мы можем использовать сторонний пакет fs-extra, предоставленный npm, для удаления данного каталога. Установим данный пакет с помощью npm .



Выполните следующую команду в командной строке

 npm установить fs-extra

Пример: Теперь запустите следующий код, чтобы удалить данный каталог.

Javascript




const fs1 = require( "fs-extra" );
const path = "./directory1" ;
fs1.remove(path, (error) => {
if (error) {
console.log(error);
} else {
console.log( "Folder Deleted Successfully !!" );
}
});

Выход

index.js

Метод Node.js fs.mkdirSync (): создадим новый каталог с помощью метода fs.mkdirSync (). Изначально у нас есть один файл index.js, как мы видим на данном изображении.

Пример:

Javascript




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!" );
});

Выход: