os(operatingsystem)提供了操作系统相关的实用方法用法:constos=require('os');os提供的方法和使用示例os.type()以字符串形式返回操作系统名称eg:>os.type()'Linux'Linux系统:'Linux'macOS系统:'Darwin'Windows系统:'Windows_NT'os.hostname()以字符串形式返回操作系统主机名eg:>os.hostname()'ocean-VirtualBox'os.release()以字符串形式返回操作系统版本eg:>os.release()'4.4.0-142-generic'os.platform()以字符串形式返回Node.js编译的操作系统平台等同于process.platformeg:>os.platform()'linux'os.endianness()以字符串形式返回Node.js二进制文件的字节顺序编译环境eg:>os.endianness()'LE'os.uptime()以秒为单位返回操作系统的在线时间eg:os.totalmem()以整数形式返回所有系统内存的字节数例如:>os.totalmem()1040474112os.freemem()以整数形式返回可用系统内存的字节数例如:>os.freemem()100966400os.tmpdir()以字符串形式返回操作系统的默认温度文件目录。eg:>os.tmpdir()'/tmp'os.homedir()以字符串的形式返回当前用户的主目录>os.homedir()'/root'os.getPriority([pid])返回计划pid指定进程的优先级pid默认值:0.eg:>os.getPriority()0os.setPriority([pid,]priority)设置pid指定进程的计划优先级如果没有提供pid,或者为0,则使用当前进程的优先级priority必须是-20(高优先级)和19(低优先级)os.arch()之间的一个整数返回一个字符串表示Node.js二进制编译使用的操作系统的CPU架构等同于process.arch可能的值:'arm','arm64','ia32','mips'','mipsel','ppc','ppc64','s390','s390x','x32','x64'例如:>os.arch()'x64'os.cpus()返回一个数组对象,包含有关每个逻辑CPU内核的信息。eg:>os.cpus()[{model:'Intel(R)Core(TM)i5-8250UCPU@1.60GHz',speed:1800,times:{user:4382300,nice:22200,sys:679200,idle:20595000,irq:0}}]os.loadavg()返回一个数组,包括1、5、15分钟的平均负载。例如:>os.loadavg()[0.71142578125,0.47509765625,0.224609375]os.networkInterfaces()返回一个对象,该对象仅包含分配了网络地址的网络接口internal:true如果网络接口是环回或类似的远程不可用接口,否则为falsescopeid:IPv6数字字段标识代码(仅当family为IPv6时可用)cidr:以带有路由前缀的CIDR表示法分配的IPv4或IPv6地址如果网络掩码参数不可用,则此属性为空。例如:{lo:[{address:'127.0.0.1',netmask:'255.0.0.0',family:'IPv4',mac:'00:00:00:00:00:00',internal:true,cidr:'127.0.0.1/8'},{地址:'::1',网络掩码:'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',family:'IPv6',mac:'00:00:00:00:00:00',internal:true,cidr:'::1/128'}],eth0:[{地址:'192.168.1.108',网络掩码:'255.255.255.0',family:'IPv4',mac:'01:02:03:0a:0b:0c',internal:false,cidr:'192.168.1.108/24'},{地址:'fe80::a00:27ff:fe4e:66a1',网络掩码:'ffff:ffff:ffff:ffff::',系列:'IPv6',mac:'01:02:03:0a:0b:0c',内部:false,cidr:'fe80::a00:27ff:fe4e:66a1/64'}]}os.userInfo([options])返回关于当前活跃用户的信息在POSIX平台上:>os.userInfo(){uid:0,gid:0,username:'root',homedir:'/root',shell:'/bin/bash'}在Windows上:uid和gid为-1,shell为null>os.userInfo(){uid:-1,gid:-1,username:'yangy',homedir:'C:\\Users\\yangy',shell:null}os.EOL返回操作系统相关的行尾标志作为字符串POSIX系统上的值是:nWindows系统上的值是:rnos.constants返回一个包含常见操作系统特定常量的对象,例如错误代码和信号处理eg:>os.constants[Object:nullprototype]{UV_UDP_REUSEADDR:4,//libuv常量dlopen:[Object:nullprototype]{//dlopenconstantRTLD_LAZY:1,RTLD_NOW:2,RTLD_GLOBAL:256,RTLD_LOCAL:0,RTLD_DEEPBIND:8},errno:[Object:nullprototype]{//错误常量E2BIG:7,EACCES:13,EADDRINUSE:98,EADDRNOTAVAIL:99,EAFNOSUPPORT:97,EAGAIN:11,EALREADY:114,EBADF:9,EBADMSG:74,EBUSY:16,ECANCELED:125、ECHILD:10,ECONNABORTED:103,ECONNREFUSED:111,ECONNRESET:104,EDEADLK:35,EDESTADDRREQ:89,EDOM:33,EDQUOT:122,EEXIST:17,EFAULT:14,EFBIG:27,EHOSTUNREACH:113,EIDRM:43,EILSEQ:84,EINPROGRESS:115,EINTR:4,EINVAL:22,EIO:5,EISCONN:106,EISDIR:21,ELOOP:40,EMFILE:24,EMLINK:31,EMSGSIZE:90,EMULTIHOP:72,ENAMETOOLONG:36,ENETDOWN:100,ENETRESET:102,ENETUNREACH:101,ENFILE:23,ENOBUFS:105,ENODATA:61,ENODEV:19,ENOENT:2,ENOEXEC:8,ENOLCK:37,ENOLINK:67,ENOMEM:12,ENOMSG:42,ENOPROTOOPT:92,ENOSPC:28,ENOSR:63,ENOSTR:60,ENOSYS:38,ENOTCONN:107,ENOTDIR:20,ENOTEMPTY:39,ENOTSOCK:88,ENOTSUP:95,ENOTTY:25,ENXIO:6,EOPNOTSUPP:95,EOVERFLOW:75,EPERM:1,EPIPE:32,EPROTO:71,EPROTONOSUPPORT:93,EPROTOTYPE:91,ERANGE:34,EROFS:30,ESPIPE:29,ESRCH:3,ESTALE:116,ETIME:62,ETIMEDOUT:110,ETXTBSY:26,EWOULDBLOCK:11,EXDEV:18},signals:[Object:nullprototype]{//信号常量SIGHUP:1,//发送以指示控制终端何时关闭或父进程退出SIGINT:2,SIGQUIT:3,SIGILL:4,SIGTRAP:5,SIGABRT:6,SIGIOT:6,SIGBUS:7,SIGFPE:8,SIGKILL:9,SIGUSR1:10,SIGSEGV:11,SIGUSR2:12,SIGPIPE:13、SIGALRM:14,SIGTERM:15,SIGCHLD:17,SIGSTKFLT:16,SIGCONT:18,SIGSTOP:19,SIGTSTP:20,SIGTTIN:21,SIGTTOU:22,SIGURG:23,SIGXCPU:24,SIGXFSZ:25,SIGVTALRM:26,SIGPROF:27,SIGWINCH:28,SIGIO:29,SIGPOLL:29,SIGPWR:30,SIGSYS:31,SIGUNUSED:31},priority:[Object:nullprototype]{//优先级常量PRIORITY_LOW:19,//最低的进程调度优先级,对应IDLE_PRIORITY_CLASSPRIORITY_BELOW_NORMAL:10onWindows,//进程调度优先级介于PRIORITY_LOW和PRIORITY_NORMAL之间Between,对应Windows上的BELOW_NORMAL_PRIORITY_CLASSPRIORITY_NORMAL:0,//默认进程调度优先级,对应Windows上的NORMAL_PRIORITY_CLASSPRIORITY_ABOVE_NORMAL:-7,//进程调度优先级介于PRIORITY_NORMAL和PRIORITY_HIGH之间,对应Windows上的ABOVE_NORIGHAL_CLPRIISOR:-14,//进程调度优先级介于PRIORITY_ABOVE_NORMAL和PRIORITY_HIGHEST之间,对应Windows上HIGH_PRIORITY_CLASSPRIORITY_HIGHEST:-2??0//最高进程调度优先级,对应Windows上REALTIME_PRIORITY_CLASS}}
