file-cmd

0.1.0 • Public • Published

file-cmd

a tool to handle file like cmd , Generator/async friendly !

LinuxShell命令行一样的Node.js文件系统操作函数库,Generator/async友好,可以放入Generator或Async函数中使用,极大的方便Node.js文件操作 !

安装

npm install file-cmd --save

使用

file-cmd 可以单独使用,也可以放入Generator/async函数中使用,因为其函数都返回一个Promise对象

let fileCmd = require('file-cmd')
let path = require('path')
let co = require('co')
 
 
//类似co的Generator和async函数是Node.js文件IO编程的未来,建议将file-cmd放入之中使用
co(function* () {
    try {
        //mkdir 创建文件夹
        //fileCmd.mkdir(要创建的文件夹的绝对路径)
        yield fileCmd.mkdir(path.join(__dirname, 'tttt'))
 
        //cat 写入或读取文件
        //fileCmd.cat(要读取的文件的绝对路径)=>返回读取文件获得的数据
        //fileCmd.cat(要写入的文件的绝对路径,要写入的数据)
        let text = yield fileCmd.cat(path.join(__dirname, 'README.md'))
        console.log(text.toString())
        yield fileCmd.cat(path.join(__dirname, 'package.json'), 'hello')
 
        //rm 删除文件或文件夹
        //fileCmd.rm(要删除的文件或文件夹的绝对路径)
        yield fileCmd.rm(path.join(__dirname, 'te'))
 
        //rmdir 删除文件夹
        //fileCmd.rmdir(要删除的文件夹的绝对路径)
        yield fileCmd.rmdir(path.join(__dirname, 'testdir'))
 
        //cp 复制文件或文件夹
        //fileCmd.cp(要复制的文件或文件夹,要复制到的路径)
        //fileCmd.cp(要复制的文件或文件夹,要复制到的路径,对被复制后的文件或文件夹重命名)
        //若不传入第三个参数,复制的文件或文件夹沿用之前的名字
        yield fileCmd.cp(
            path.join(__dirname, 'node_modules'),
            path.join(__dirname, 'sdf'),
            'test_modules'
        )
 
        //cpf 强制复制文件或文件夹(若复制的是文件夹,将覆盖原有文件夹)
        yield fileCmd.cpf(
            path.join(__dirname, 'node_modules'),
            path.join(__dirname, 'sdf'),
            'test_modules'
        )
 
        //ls 遍历文件夹
        //fileCmd.ls(要遍历的文件夹的绝对路径)=>返回文件夹下根目录文件/文件夹名组成的数组
        let files = fileCmd.ls(path.join(__dirname, ''))
        console.log(files)
 
        //mv 移动文件或文件夹
        //fileCmd.mv(要移动的文件或文件夹,要移动到的路径)
        //fileCmd.mv(要移动的文件或文件夹,要移动到的路径,对被移动后的文件或文件夹重命名)
        //若不传入第三个参数,移动后的文件或文件夹沿用之前的名字
        yield fileCmd.mv(path.join(__dirname, 'b'), path.join(__dirname, '../'))
 
        //wait 暂停程序执行指定时间
        //fileCmd.wait(指定时间,单位ms)
        yield fileCmd.wait(2000)
 
    } catch (e) {
        console.error(e)
    }
})
 
//如果想独立使用file-cmd也可以
fileCmd.cat(path.join(__dirname, 'README.md'))
    .then(function (data) {
        console.log(data.toString())
    })

Readme

Keywords

none

Package Sidebar

Install

npm i file-cmd

Weekly Downloads

4

Version

0.1.0

License

ISC

Last publish

Collaborators

  • flypie2