path
参考文档:http://nodejs.cn/api/path.html
const {normalize} = require(‘path‘); // ES6语法 // 相当于 const normalize = require(‘path‘).normalize; // 标准化路径 console.log(normalize(‘/usr///local/bin‘)); console.log(normalize(‘/usr/local/../bin‘));
输入 node normalize.js
,可以修正路径
/usr/local/bin
/usr/bin
路径拼接:
const {join} = require(‘path‘); console.log(join(‘/usr/‘,‘local‘,‘bin‘))
/usr/local/bin
将相对路径转化为绝对路径:
const {resolve} = require(‘path‘); console.log(resolve(‘./‘));
/home/dex/web/nodejs
basename,dirname,extname
const {basename,extname} = require(‘path‘); const filePath = ‘/usr/local/bin/no.txt‘; console.log(basename(filePath)); console.log(dirname(filePath)); console.log(extname(filePath));
no.txt
/usr/local/bin
.txt
parse与format
const {parse,format} = require(‘path‘); const filePath = ‘/usr/local/node_modules/n/iloveu.json‘; const ret = parse(filePath); console.log(ret); const path = format(ret); console.log(path);
{ root: ‘/‘,
dir: ‘/usr/local/node_modules/n‘,
base: ‘iloveu.json‘,
ext: ‘.json‘,
name: ‘iloveu‘ }
/usr/local/node_modules/n/iloveu.json
与操作系统有关的一些 sep delimiter win32 posix
const {sep,delimiter,win32,posix} = require(‘path‘); console.log(‘sep:‘,sep); console.log(‘win sep:‘,win32.sep); console.log(‘posix sep:‘,posix.sep); console.log(‘PATH:‘,process.env.PATH); console.log(‘delimiter:‘,delimiter); console.log(‘win delimiter:‘,win32.delimiter); console.log(‘posix delimiter:‘,posix.delimiter);
sep: /
win sep: posix sep: /
PATH: /home/dex/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
delimiter: :
win delimiter: ;
posix delimiter: :
delimiter: // 分割符,windows下是;(分号)Linux是:(冒号)