一.fs-extra 文件管理

$npm install fs-extra --save

1.创建一个目录

fs.mkdir(path, [mode], [callback(err)])
path 将创建的目录路径
mode 目录权限(读写权限),默认0777
callback 回调,传递异常参数err

创建目录

await fs.mkdir(path.join(__dirname, "/images", dir));

2.删除一个空目录

fs.rmdir(path,callback)

3.读取一个目录

fs.readdir(path,callback(err,files))

  

4、复制文件

fs.copy('G:/works/node爬虫/images', 'G:/works/node爬虫/test', function(err) {
if (err) return console.error(err)
console.log("success!")
});

5.移动文件、目录, 会删除以前的, 等于改名

fs.move('G:/works/node爬虫/images', 'G:/works/node爬虫/testss', function(err) {
if (err) return console.error(err)
console.log("success!")
});

  

6.删除文件、目录

fs.remove('G:/works/node爬虫/images2', function(err) {
if (err) return console.error(err)
console.log("success!")
})

  

7.创建文件、目录

// 目录
var dir = 'G:/works/node爬虫/my'
fs.ensureDir(dir, function(err) {
console.log(err) // => null
//dir has now been created, including the directory it is to be placed in
});
// 文件
var file = 'G:/works/node爬虫/my/file.txt'
fs.ensureFile(file, function(err) {
console.log(err) // => null
//file has now been created, including the directory it is to be placed in
});

8.写入文件, 写入txt.文件时, "\r\n"是断行

var file = 'G:/works/node爬虫/my/file.txt'
var str = "hello Alan!"
fs.outputFile(file, str, function(err) {
console.log(err) // => null fs.readFile(file, 'utf8', function(err, data) {
console.log(data) // => hello!
})
})

// 下载某图片到指定目录

const request = require('superagent')
const cheerio = require('cheerio')
const fs = require('fs-extra')
const path = require('path') function download() {
const url2 = "https://imgsa.baidu.com/forum/w%3D580/sign=cbeba091a5014c08193b28ad3a7a025b/1ba6b90e7bec54e7141e3726b5389b504ec26ab4.jpg"
const filename = url2.split('/').pop()
const req = request.get(url2)
req.pipe(fs.createWriteStream(path.join(__dirname, 'images', filename)))
}
download()

fs-extra 文件管理的更多相关文章

  1. NodeJS学习笔记 (2)文件系统操作-fs(ok)

    原文:https://github.com/chyingp/nodejs-learning-guide/blob/master/%E6%A8%A1%E5%9D%97/fs.md#%E9%80%9A%E ...

  2. 【ToolKit】轻量级JS库

    优点: 丢弃了一些不常用的方法(jQuery.fn):slideUp.fadeIn.animate等: 新增获取子节点的方法(ToolKit.fn):firstChild,lastChild等: 新增 ...

  3. 初试“七牛云”--零基础运用七牛云配合UEditor实现图片的上传和浏览(.NET篇)

    (注册和建立存储空间就不介绍了,网上一把一把的资料,自己试着点点也能明白) 作为一个成熟的菜鸟,如果遇到一个新问题,第一步当然是先百度一下... 看了N个关于七牛云的使用的帖子,表示还是蒙圈的,看懂了 ...

  4. LDS,LES,LFS,LGS,LSS指令

    LDS,LES,LFS,LGS,LSS其指令格式都是         LDS reg16,mem32 其意义是同时给一个段寄存器和一个16位通用寄存器同时赋值 具体如下:reg16=mem32的低字, ...

  5. Node.js的学习(二)node.js 模块化

    一.Node.js模块化 1.模块化概要 早期的javascript版本没有块级作用域.没有类.没有包.也没有模块,这样会带来一些问题,如复用.依赖.冲突.代码组织混乱等,随着前端的膨胀,模块化显得非 ...

  6. Moodle 中文 API 之 文件管理API

    File API  文件管理 文件夹 1. 概述 2. 文件域 2.1 命名文件域 3. 提供文件给用户 4. 从用户那获取文件 5. 样例 5.1 浏览文件 5.2 移动文件 5.3 文件列表 5. ...

  7. awk 中 FS的用法

    在openwrt文件 ar71xx.sh中 查询设备类型时,有这么一句, machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {pr ...

  8. node.js之fs模块

    一.fs模块的mkdir函数,创建文件夹 var http = require("http"); var fs = require("fs"); var ser ...

  9. 大数据学习(2)HDFS文件管理

    命令行管理HDFS [root@server1 bin]# hadoop fs Usage: hadoop fs [generic options] [-appendToFile <locals ...

随机推荐

  1. asp.net导出EXCEL的好方法!(好用,导出全部数据)

    1.调用方法: ExportExcel("application/ms-excel", "EXCEL名称.xls", GridView1, this.Page) ...

  2. php创建文件夹

    $dir = iconv("UTF-8", "GBK", "Public/bookcover"); if (!file_exists($di ...

  3. Deep Voice

    https://arxiv.org/abs/1702.07825 听起来和真人声非常接近了.

  4. vue用阿里云oss上传图片使用分片上传只能上传100kb以内的解决办法

    首先,vue和阿里云oss上传图片结合参考了 这位朋友的 https://www.jianshu.com/p/645f63745abd 文章,成功的解决了我用阿里云oss上传图片前的一头雾水. 该大神 ...

  5. 深入解析Java AtomicInteger原子类型

    深入解析Java AtomicInteger原子类型 在并发编程中,需要确保当多个线程同时访问时,程序能够获得正确的结果,即实现线程安全.线程安全性定义如下: 当多个线程访问一个类时,无论如何调度运行 ...

  6. SSM是什么框架?

    SSM框架,是Spring + Spring MVC + MyBatis的缩写,这个是继SSH之后,目前比较主流的Java EE企业级框架,适用于搭建各种大型的企业级应用系统. 1.Spring简介 ...

  7. MVC學習網站

    http://www.cnblogs.com/haogj/archive/2011/11/23/2246032.html

  8. Eclipse------如何将项目通过maven编译并打包

    1.右击项目>>>点击Debug As>>>点击 Maven install进行编译,编译成功后入图 2.右击项目>>>点击Debug As> ...

  9. RxJava中的doOnSubscribe默认运行线程分析

    假设你对RxJava1.x还不是了解,能够參考以下文章. 1. RxJava使用介绍 [视频教程] 2. RxJava操作符   • Creating Observables(Observable的创 ...

  10. InsertSql

    declare @hobby table(hobbyID int,hName nvarchar(100));insert into @hobby(hobbyID,hName)Select 1,'爬山' ...