密码
从 辛德雷索胡斯/阴道 添加安全补丁 CVE-2020-28469 (中文(简体) )。 。 。 .
复制文件
为什么
安装
$ npm install @brickdoc/cpy
使用量
const cpy = require("cpy");
(async () => {
await cpy(["source/*.png", "!source/goat.png"], "destination");
console.log("Files copied!");
})();
API 密码
cpy( 来源、 目的地、 选项 )
回返a Promise<string[]> 带有目的文件路径.
来源
类型 : string | string[]
要复制的文件 .
如果其中的任何文件不存在, 就会出现出错( 不适用于 globs) .
目标
类型 : string
目标目录.
选项
类型 : object
选项传递给 荣耀。 。 。 .
此外,您还可以指定以下选项.
数据
类型 : string
默认 : process.cwd()
查找源文件的工作目录 .
覆盖
类型 : boolean
默认 : true
覆盖已存在的文件 .
家长
类型 : boolean
默认 : false
保存路径结构.
重命名
类型 : string | Function
文件名或函数返回用于重命名每个文件的文件名 source。 。 。 .
const cpy = require("cpy");
(async () => {
await cpy("foo.js", "destination", {
rename: (basename) => `prefix-${basename}`,
});
})();
货币
类型 : number
默认 : (os.cpus().length || 1) * 2
同时复制的文件数量 .
忽略 Junk 选项
类型 : boolean
默认 : true
忽略 垃圾 文档.
过滤器
类型 : Function
要过滤要复制的文件的函数 .
接收源文件对象作为第一个参数.
返回真实包含,虚假排除。 你也可以回到一个承诺 解决的真伪.
const cpy = require("cpy");
(async () => {
await cpy("foo", "destination", {
filter: (file) => file.extension !== "nocopy",
});
})();
源文件对象
路径
类型 : string
示例 '/tmp/dir/foo.js'
已解析文件路径 .
相对
类型 : string
示例 'dir/foo.js' 若为 cwd 曾经 '/tmp'
文件的相对路径 cwd。 。 。 .
名称
类型 : string
示例 'foo.js'
带有扩展名的文件名 .
名称不扩展
类型 : string
示例 'foo'
没有扩展名的文件名 .
扩展
类型 : string
示例 'js'
文件扩展名.
进度报告
cpy.on ('进度', 处理器)
处理器( 进度)
类型 : Function
进展
{
completedFiles: number,
totalFiles: number,
completedSize: number,
percent: number
}
completedSize以字节表示percent是介于0财务报告和审定财务报表1
注意 .on() 方法仅在初始状态之后才使用 cpy 打电话,所以请确保您添加一个 handler 在等待承诺之前:
(async () => {
await cpy(source, destination).on("progress", (progress) => {
// …
});
})();
相关
- (cpy-cli语) - 本单元的CLI
- cp 文档 - 复制一个文件
- 移动文件 - 移动一个文件
- 编目线 - 必要时编制目录及其父母