zoukankan      html  css  js  c++  java
  • Node.js Path 模块

    获取文件路径的三种方法
    path.resolve('./)
    process.cwd();
    __dirname,__filename;

    前两种总是一样的,返回node命令所在文件夹的位置
    后一种总是返回文件的绝对路径

    var path = require("path")
    //连接路径
    path.join([path1][, path2][, ...])
    //解析为绝对路径
    path.resolve([...path],to)

    path.resolve([…paths])里的每个参数都类似在当前目录执行一个cd操作,从左到右执行,返回的是最后的当前目录,

    这样理解才和文档中的例子对上号,例如:
    path.resolve('/foo/bar','./baz');相当于:

    cd /foo/bar //此时当前路径为 /foo/bar
    cd ./baz //此时路径为 /foo/bar/baz

    path.resolve('/foo/bar', '/tmp/file/');相当于:

    cd /foo/bar //此时路径为 /foo/bar
    cd /tmp/file/ //此时路径为 /tmp/file

    path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif');// 如果当前工作目录为 /home/myself/node,相当于:

    cd wwwroot //此时路径为/home/myself/node/wwwroot
    cd static_files/png/ //此时路径为/home/myself/node/wwwroot/static_files/png/
    cd ../gif/image.gif // ..代表退出一级 进入gif目录

    为/home/myself/node/wwwroot/static_files/gif/image.gif

    path.normalize(p)
    规范化路径,注意'..' 和 '.'。
    2 path.join([path1][, path2][, ...])
    用于连接路径。该方法的主要用途在于,会正确使用当前系统的路径分隔符,Unix系统是"/",Windows系统是""。
    3 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'
    4 path.isAbsolute(path)
    判断参数 path 是否是绝对路径。
    5 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'
    6 path.dirname(p)
    返回路径中代表文件夹的部分,同 Unix 的dirname 命令类似。
    7 path.basename(p[, ext])
    返回路径中的最后一部分。同 Unix 命令 bashname 类似。
    8 path.extname(p)
    返回路径中文件的后缀名,即路径中最后一个'.'之后的部分。如果一个路径中并不包含'.'或该路径只包含一个'.' 且这个'.'为路径的第一个字符,则此命令返回空字符串。
    9 path.parse(pathString)
    返回路径字符串的对象。
    10 path.format(pathObject)
    从对象中返回路径字符串,和 path.parse 相反。
     
  • 相关阅读:
    Mybatis缓存理解
    Spring Batch中job的启动,停止,放弃操作
    spring中xml配置方式和注解annoation方式(包括@autowired和@resource)的区别
    fastjson使用TypeReference示例
    RabbitMQ基础组件和SpringBoot整合RabbitMQ简单示例
    RabbitMQ中各种消息类型如何处理?
    消息队列RabbitMQ基础知识详解
    RabbitMQ的消息确认机制
    rsync+inotify-tools
    Linux Rsync
  • 原文地址:https://www.cnblogs.com/joer717/p/10522658.html
Copyright © 2011-2022 走看看