fs-extra 中的异步复制 - NodeJS
异步复制简介
此方法将文件或目录从一个位置复制到另一个位置。该目录可以包含子目录和文件。
语法
copy(src, dest[, options][, callback])
参数
src – 这是一个字符串参数,用于保存需要复制的文件或目录的源位置。如果位置是目录,它将复制目录内部的所有内容而不是整个目录。
dest – 它将保存文件/目录将被复制到的目标位置。如果 src 是文件,则 dest 不能是目录。
options −
overwrite – 如果设置为 true,则将覆盖现有的文件或目录。默认值为 true。
errorOnExist – 仅当 overwrite 设置为 false 时,如果目标文件/文件夹存在,它将抛出错误。
preserveTimestamps – 如果为 true,则最新修改和访问时间将设置为原始文件的时间,否则它将取决于操作系统。
filter – 此选项将过滤复制的文件。如果设置为 true,则将包含已过滤的文件。
callback – 如果发生任何错误,此函数将提供回调。
示例
在继续之前,请检查是否已安装 fs-extra,如果没有,请安装 fs-exra。
您可以使用以下命令检查是否已安装 fs-extra。
npm ls fs-extra
创建一个 **copyExample**.js 并将以下代码片段复制粘贴到该文件中。
现在,运行以下命令来运行代码片段。
node copyExample.js
代码片段
const fs = require('fs-extra')
// Copies file with a callback:
fs.copy('/tmp/myfile', '/tmp/mynewfile', err => {
if (err) return console.error(err)
console.log('success with callback!')
}) // Return a callback if any error occurs
// Copies directory from src to dest
fs.copy('/tmp/mydir', '/tmp/mynewdir', err => {
if (err) return console.error(err)
console.log('Directories copied successfully!')
})
// Copies file with Promises:
fs.copy('/tmp/myfile', '/tmp/mynewfile')
.then(() => {
console.log('success with promise!')
})
.catch(err => {
console.error(err)
})
// Copies file with async/await:
async function copyExample () {
try {
await fs.copy('/tmp/myfile', '/tmp/mynewfile')
console.log('success with await!')
} catch (err) {
console.error(err)
}
}
copyExample()输出
C:\Users\tutorialsPoint\> node copyExample.js success with callback! success with promise! success with await! Directories copied successfully!
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP