精品人伦一区二区三区蜜桃视频_日韩精品视频在线_www.色综合_久久久久久一区_aaaaaa黄色片_亚洲精品久久

NodeJS 使用copy-dir 快速復制內容

Node雖然自帶有文件處理庫,但是用起來不是特別方便。找了一下,發現一個第三方庫,非常好用,現在就記錄一下。

copy-dir

copy-dir是一款第三方的功能庫,支持使用過濾器對復制文件的內容,進行過濾。將文件或目錄復制到另一個路徑,當目標路徑或父目標路徑不存在時,它還可以自動創建目錄。

https://www.npmjs.com/package/copy-dir

使用方法

安裝庫

npm install copy-dir

?同步方法

這個很好用

 

copydir.sync(from, to[, options]);

參數說明

 

  • utimes: 默認為?false,如果設置為?true,則保留文件的訪問和修改時間戳。
  • mode: 默認為?false,如果設置為?true,則保留文件的權限模式。
  • cover: 默認為?true,如果設置為?false,則在目標路徑已存在同名文件時不會覆蓋。
  • filter: 一個函數,用于過濾路徑。返回?true?表示復制,返回?false?表示不復制。

示例

var copydir = require('copy-dir');
copydir.sync('/my/from/path', '/my/target/path', {
  utimes: true,
  mode: true,
  cover: true
});

這是簡單的直接復制內容到指定文件夾了

 

可以添加過濾器,指定文件夾或者文件可以不要。在方法里面返回false就表示不復制

var path = require('path');
var copydir = require('copy-dir');
copydir.sync('/my/from/path', '/my/target/path', {
  filter: function(stat, filepath, filename) {
    if (stat === 'file' && path.extname(filepath) === '.html') {
      return false;
    }
    if (stat === 'directory' && filename === '.svn') {
      return false;
    }
    if (stat === 'symbolicLink') {
      return false;
    }
    return true;
  }
});
console.log('done');

?異步方法

 

var copydir = require('copy-dir');
copydir(from, to, [options, ]callback);

其中,call為回調函數

 

改造函數

果核改造一個方法出來,讓函數更好用

dir:源文件

targetDir:目標文件

eliminate_dir:排除的文件夾,數組

eliminate_suffix:排除指定后綴名的文件,數組,例如:['.log','.txt']

eliminate_files:排除指定文件,完整的文件名,數組

function copy(dir, targetDir, eliminate_dir, eliminate_suffix, eliminate_files) {
    copy_dir.sync(dir, targetDir, {
        filter: (stat, filepath, filename) => {
            if (stat === 'directory') {
                return !eliminate_dir.includes(filename);
            }
            if (stat === 'file') {
                let suffix = path.extname(filepath);
                if (eliminate_suffix.includes(suffix)) {
                    return false;
                } else if (eliminate_files.includes(filename)) {
                    return false;
                }
                return true;
            }
        }
    });
}

 

 

THE END
主站蜘蛛池模板: 国产精品一区二区在线免费观看 | 国产在线视频一区二区 | 免费精品 | 亚洲欧美国产精品一区二区 | 日韩精品在线免费 | www.youjizz.com日韩 | 亚洲国产高清在线观看 | 日日夜夜免费精品 | 中文字幕97 | 久久99精品久久久久久狂牛 | 成人激情视频网 | 爱操影视| 亚洲一级淫片 | 精品国产第一区二区三区 | 欧美日本一区二区 | 欧美日韩在线精品 | 久久国产精品免费一区二区三区 | 欧美成人精品一区二区男人看 | 九九热在线免费观看 | 精品国产一二三区 | 澳门永久av免费网站 | 日韩中文字幕高清 | 美女高潮网站 | av手机在线播放 | 激情六月丁香 | 天天综合网7799精品 | 国产在线视频99 | 福利视频一区二区三区 | 免费成人av网站 | 97久久精品午夜一区二区 | 国产精品视频www | 色婷婷综合网站 | 日韩欧美在线观看视频 | 久久久久久久久国产精品 | 久久精品黄色 | 精品福利一区二区三区 | 亚洲视频二区 | 99视频在线播放 | 久草久 | 欧美一区二区三区在线视频 | 亚洲欧美中文字幕在线观看 |