美文网首页
fs.access(path[, mode], callback

fs.access(path[, mode], callback

作者: 静昕妈妈芦培培 | 来源:发表于2021-02-19 16:23 被阅读0次

测试用户对 path 指定的文件或目录的权限。
mode 参数是一个可选的整数,指定要执行的可访问性检查。

image.png image.png

1.检查文件是否存在于当前目录中

const fs = require('fs')
const path = require('path')

//检查文件是否存在于当前目录中
fs.access('package.json', fs.constants.F_OK, err => {
    if(err) {
        console.log('package.json不存在于当前目录中')
        return
    }
    console.log('package.json存在于当前目录中')
})

fs.access('index.js', fs.constants.F_OK, err => {
    if(err) {
        console.log('index.js不存在于当前目录中')
        return
    }
    console.log('index.js存在于当前目录中')
})

运行结果:


image.png

2.检查文件是否可读

const fs = require('fs')
const path = require('path')

fs.access('index.js', fs.constants.R_OK, err => {
    console.log(`index.js${err? '不可读':'可读'}`)
})

执行结果:


image.png

3.检查文件是否可写

const fs = require('fs')
const path = require('path')

fs.access('index.js', fs.constants.W_OK, err => {
    console.log(`index.js${err? '不可写':'可写'}`)
})

执行结果:


image.png

4.检查文件是否存在于当前目录中、以及是否可写。

const fs = require('fs')
const path = require('path')

fs.access('package.json', fs.constants.F_OK | fs.constants.W_OK, err => {
    if(err) {
        //有错误,说明此文件不存在或不可读
        if(err.code === 'ENOENT') {
            console.error(err)
            console.error('package.json不存在于当前目录中')

            return
        }else {
            console.error('package.json不可读')
            return
        }
    }

    console.log('package.json可读')
})

fs.access('index.js', fs.constants.F_OK | fs.constants.W_OK, err => {
    if(err) {
        //有错误,说明此文件不存在或不可读
        if(err.code === 'ENOENT') {
            console.error(err)
            console.error('index.js不存在于当前目录中')

            return
        }else {
            console.error('index.js不可读')
            return
        }
    }

    console.log('index.js可读')
})

执行结果:


image.png

5.检查文件夹是否存在

const fs = require('fs')
const path = require('path')
 
//检查文件夹是否存在
fs.access('dir', fs.constants.F_OK, err => {
    if(err) {
        console.error('dir文件夹不存在')
        return
    }
    console.error('dir文件夹存在')
})

执行结果:


image.png

相关文章

网友评论

      本文标题:fs.access(path[, mode], callback

      本文链接:https://www.haomeiwen.com/subject/thpaxltx.html