Node.js 工具模块-OS模块+path模块
node.js os 模块提供了一些基本的系统操作函数。
os.tmpdir()
返回操作系统的默认临时文件夹。
os.endianness()
返回 cpu 的字节序,可能的是 "be" 或 "le"。
os.hostname()
返回操作系统的主机名。
os.type()
返回操作系统名
os.platform()
返回编译时的操作系统名
os.arch()
返回操作系统 cpu 架构,可能的值有 "x64"、"arm" 和 "ia32"。
os.release()
返回操作系统的发行版本。
os.uptime()
返回操作系统运行的时间,以秒为单位。
os.loadavg()
返回一个包含 1、5、15 分钟平均负载的数组。
os.totalmem()
返回系统内存总量,单位为字节。
os.freemem()
返回操作系统空闲内存量,单位是字节。
os.cpus()
返回一个对象数组,包含所安装的每个 cpu/内核的信息:型号、速度(单位 mhz)、时间(一个包含 user、nice、sys、idle 和 irq 所使用 cpu/内核毫秒数的对象)。
os.networkinterfaces()
获得网络接口列表。
os.eol
定义了操作系统的行尾符的常量。
var os = require("os"); // cpu 的字节序 console.log(os.endianness()); // 操作系统名 console.log(os.type()); // 操作系统名 console.log(os.platform()); // 系统内存总量 console.log(os.totalmem()+" bytes"); // 操作系统空闲内存量 console.log(os.freemem()+" bytes");
node.js path 模块提供了一些用于处理文件路径的小工具
path.normalize(p)
规范化路径,注意'..' 和 '.'。
path.join([path1][, path2][, ...])
用于连接路径。该方法的主要用途在于,会正确使用当前系统的路径分隔符,unix系统是"/",windows系统是"\"。
path.resolve([from ...], to)
将 to 参数解析为绝对路径,给定的路径的序列是从右往左被处理的,后面每个 path 被依次解析,直到构造完成一个绝对路径。 例如,给定的路径片段的序列为:/foo、/bar、baz,则调用 path.resolve('/foo', '/bar', 'baz') 会返回 /bar/baz。
path.resolve('/foo/bar', './baz'); // 返回: '/foo/bar/baz' path.resolve('/foo/bar', '/tmp/file/'); // 返回: '/tmp/file' path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif'); // 如果当前工作目录为 /home/myself/node, // 则返回 '/home/myself/node/wwwroot/static_files/gif/image.gif'
path.isabsolute(path)
判断参数 path 是否是绝对路径。
path.relative(from, to)
用于将绝对路径转为相对路径,返回从 from 到 to 的相对路径(基于当前工作目录)。
在 linux 上:
path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb'); // 返回: '../../impl/bbb'
在 windows 上:
path.relative('c:\\orandea\\test\\aaa', 'c:\\orandea\\impl\\bbb'); // 返回: '..\\..\\impl\\bbb'
path.dirname(p)
返回路径中代表文件夹的部分,同 unix 的dirname 命令类似。
path.basename(p[, ext])
返回路径中的最后一部分。同 unix 命令 bashname 类似。
path.extname(p)
返回路径中文件的后缀名,即路径中最后一个'.'之后的部分。如果一个路径中并不包含'.'或该路径只包含一个'.' 且这个'.'为路径的第一个字符,则此命令返回空字符串。
path.parse(pathstring)
返回路径字符串的对象。
path.format(pathobject)
从对象中返回路径字符串,和 path.parse 相反。
path.sep
平台的文件路径分隔符,'\\' 或 '/'。
path.delimiter
平台的分隔符, ; or ':'.
path.posix
提供上述 path 的方法,不过总是以 posix 兼容的方式交互。
path.win32
提供上述 path 的方法,不过总是以 win32 兼容的方式交互。
var path = require("path"); // 格式化路径 console.log(path.normalize('/test/test1//2slashes/1slash/tab/..'));// '/test/test1//2slashes/1slash/tab/..' // 连接路径 console.log(path.join('/test', 'test1', '2slashes/1slash', 'tab', '..'));// \test\test1\2slashes\1slash // 转换为绝对路径 console.log(path.resolve("main.js"));// c:\users\yg1st\mynode\main.js // 路径中文件的后缀名 console.log(path.extname("main.js"));// .js