如何使用 Node.js 创建目录?
在本文中,我们将使用NodeJS创建一个目录。
NodeJS有Filesystem(fs)核心模块,可以与文件系统交互,有Node.js fs.mkdir() 方法或Node.js fs.mkdirSync() 方法方法,用于创建新目录/父目录。
Node.js fs.mkdir() 方法:让我们使用fs.mkdir()方法创建一个新目录。最初,我们有单个文件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 !!");
}
});
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 !!");
}
});
Javascript
const fs1 = require("fs-extra");
const path = "./directory1";
fs1.remove(path, (error) => {
if (error) {
console.log(error);
} else {
console.log("Folder Deleted Successfully !!");
}
});
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!");
});
输出:
- 您可以检查终端输出。
- 执行上述代码后,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 !!");
}
});
输出:
- 新目录创建成功。
我们可以看到创建了一个多级目录“ directory1\directory2\new-directory ”。
删除文件夹:如果我们想删除给定的目录,我们可以使用 Node.js 的 fs.rmdir() 方法或 Node.js 的 fs.rmdirSync() 方法,如果目录包含一些文件内容会变得复杂。
所以我们可以使用npm提供的第三方包fs-extra来删除给定的目录。让我们使用npm安装给定的包。
在命令行中运行以下命令
npm install 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 !!");
}
});
输出
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!");
});
输出: