🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
``` // let path = require('path'); //一个'\'是打印不出来的,它是转义符,有特殊意义 // console.log('\'); //报错 /** * normalize * 对路径进行容错处理 * 主要是 路径分隔符多不多,有没有..有的话自动转化 */ const {normalize} = require('path'); console.log(normalize('/usr//local/bin')); // /usr/local/bin console.log(normalize('usr//local/../bin')); // /usr/bin /** * join * 在拼接路径之前hi调用normalize */ const {join} = require('path'); console.log(join('usr/','local','bin')); // usr/local/bin /** * 将相对路径解析成绝对路径 */ const {resolve} = require('path'); console.log(resolve('./')) /** * basename,dirname,extname */ const {basename,dirname,extname} = require('path'); const filePath = '/usr/local/bin/no.txt'; console.log(basename(filePath)); //no.txt console.log(dirname(filePath)); //文件夹 /usr/local/bin console.log(extname(filePath)); //后缀 /** * parse 和 format 作用是相反的 * return pathObject */ const {parse,format} = require('path'); const ret = parse(filePath); console.log(ret); // { root: '/', // dir: '/usr/local/bin', // base: 'no.txt', // ext: '.txt', // name: 'no' } console.log(format(ret)); // /usr/local/bin/no.txt //format若存在冲突dir和base的优先级较高 /** * */ const { sep, delimiter, win32, posix } = require('path'); console.log('sep:',sep); //当前系统的路径分隔符 console.log('win sep',win32.sep); //查看window下的路径分隔符 console.log('posix sep',posix.sep); console.log('PATH',process.env.PATH); //系统环境变量 console.log('delimiter:',delimiter); // : 系统环境变量的分隔符 ``` ``` let path = require('path'); // const mod = require('./0'); // console.log(mod.testVar); console.log('__dirname',__dirname); //D:\WEB\zfplan\studydaydayup\node\node-base\path console.log('process.cwd()',process.cwd()); //D:\WEB\zfplan\studydaydayup\node\node-base\path console.log('./',path.resolve('./')); //D:\WEB\zfplan\studydaydayup\node\node-base\path /** * 若用命令行打印 此时若在命令行中退后一层 再打印 * cwd,resolve 为命令行所处位置,而__dirname和__filename永远是绝对路径 */ /** 对于 : 【./】 * require方法无论怎么调都是文件的绝对路径 * 其它地方和process.cwd一样,是指node启动的路径位置 */ ``` ## process.chdir可以更改当前控制台位置 ![](https://box.kancloud.cn/825ee3379814b97599bffdcc473c535f_275x182.png) ![](https://box.kancloud.cn/fb18cd5130d14bfc1cef2c107b1b4e55_474x119.png)