亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

node.js中的fs.realpath方法使用說明

2019-11-20 13:43:12
字體:
來源:轉載
供稿:網友

方法說明:

獲取真實路徑。

可以使用process.cwd解決相對路徑。

語法:

復制代碼 代碼如下:

fs.realpath(path, [cache], [callback(err , resolvedPath)])

由于該方法屬于fs模塊,使用前需要引入fs模塊(var fs= require(“fs”) )

接收參數:

path                             路徑

cache                           可選,一個文字的映射路徑可用于強制一個特定的路徑解決或避免額外的fs.stat需要知道真正的路徑對象。

callback                       回調

err                                異常

resolvedPath               真實地址

例子:

復制代碼 代碼如下:

var cache = {'/etc':'/private/etc'};
fs.realpath('/etc/passwd', cache, function (err, resolvedPath) {
  if (err) throw err;
  console.log(resolvedPath);
});

源碼:

復制代碼 代碼如下:

fs.realpath = function realpath(p, cache, cb) {
  if (!util.isFunction(cb)) {
    cb = maybeCallback(cache);
    cache = null;
  }
  // make p is absolute
  p = pathModule.resolve(p);
  if (cache && Object.prototype.hasOwnProperty.call(cache, p)) {
    return process.nextTick(cb.bind(null, null, cache[p]));
  }
  var original = p,
      seenLinks = {},
      knownHard = {};
  // current character position in p
  var pos;
  // the partial path so far, including a trailing slash if any
  var current;
  // the partial path without a trailing slash (except when pointing at a root)
  var base;
  // the partial path scanned in the previous round, with slash
  var previous;
  start();
  function start() {
    // Skip over roots
    var m = splitRootRe.exec(p);
    pos = m[0].length;
    current = m[0];
    base = m[0];
    previous = '';
    // On windows, check that the root exists. On unix there is no need.
    if (isWindows && !knownHard[base]) {
      fs.lstat(base, function(err) {
        if (err) return cb(err);
        knownHard[base] = true;
        LOOP();
      });
    } else {
      process.nextTick(LOOP);
    }
  }
  // walk down the path, swapping out linked pathparts for their real
  // values
  function LOOP() {
    // stop if scanned past end of path
    if (pos >= p.length) {
      if (cache) cache[original] = p;
      return cb(null, p);
    }
    // find the next part
    nextPartRe.lastIndex = pos;
    var result = nextPartRe.exec(p);
    previous = current;
    current += result[0];
    base = previous + result[1];
    pos = nextPartRe.lastIndex;
    // continue if not a symlink
    if (knownHard[base] || (cache && cache[base] === base)) {
      return process.nextTick(LOOP);
    }
    if (cache && Object.prototype.hasOwnProperty.call(cache, base)) {
      // known symbolic link. no need to stat again.
      return gotResolvedLink(cache[base]);
    }
    return fs.lstat(base, gotStat);
  }
  function gotStat(err, stat) {
    if (err) return cb(err);
    // if not a symlink, skip to the next path part
    if (!stat.isSymbolicLink()) {
      knownHard[base] = true;
      if (cache) cache[base] = base;
      return process.nextTick(LOOP);
    }
    // stat & read the link if not read before
    // call gotTarget as soon as the link target is known
    // dev/ino always return 0 on windows, so skip the check.
    if (!isWindows) {
      var id = stat.dev.toString(32) + ':' + stat.ino.toString(32);
      if (seenLinks.hasOwnProperty(id)) {
        return gotTarget(null, seenLinks[id], base);
      }
    }
    fs.stat(base, function(err) {
      if (err) return cb(err);
      fs.readlink(base, function(err, target) {
        if (!isWindows) seenLinks[id] = target;
        gotTarget(err, target);
      });
    });
  }
  function gotTarget(err, target, base) {
    if (err) return cb(err);
    var resolvedLink = pathModule.resolve(previous, target);
    if (cache) cache[base] = resolvedLink;
    gotResolvedLink(resolvedLink);
  }
  function gotResolvedLink(resolvedLink) {
    // resolve the link, then start over
    p = pathModule.resolve(resolvedLink, p.slice(pos));
    start();
  }
};

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久久国产精品久久| 欧美视频一二三| 欧美成人激情视频| 亚洲国产精品久久久久秋霞不卡| 欧美激情影音先锋| 亚洲精品国产品国语在线| 亚洲一区亚洲二区亚洲三区| 国产欧美日韩中文字幕在线| 欧美一级bbbbb性bbbb喷潮片| 国产mv免费观看入口亚洲| 毛片精品免费在线观看| 亚洲国产精品女人久久久| 在线成人一区二区| 久久国产精品亚洲| 国产成人97精品免费看片| www.日韩av.com| 色狠狠av一区二区三区香蕉蜜桃| 欧洲午夜精品久久久| 久久中文精品视频| 麻豆国产va免费精品高清在线| 97在线视频一区| 亚洲欧美日韩天堂| 国产精品免费一区二区三区都可以| 欧美大片欧美激情性色a∨久久| 国产91在线高潮白浆在线观看| 国产一区二区三区视频免费| 国产视频精品久久久| 亚洲午夜色婷婷在线| 国产精品mp4| 日韩欧美国产激情| 久久久久久高潮国产精品视| 亚洲视屏在线播放| 亚洲精品久久7777777| 国产69精品久久久久99| 午夜精品美女自拍福到在线| 亚洲精品第一页| 中文字幕免费国产精品| 国产日韩欧美夫妻视频在线观看| 久久久久国产精品www| 久久久亚洲影院| 日韩精品福利网站| 97在线免费观看| 欧美男插女视频| 中文字幕国内精品| 亚洲精品白浆高清久久久久久| 少妇激情综合网| 国产69精品99久久久久久宅男| 亚洲欧美国产精品| 伊人一区二区三区久久精品| 欧美午夜无遮挡| 亚洲天堂网在线观看| 欧美精品国产精品日韩精品| 自拍偷拍亚洲在线| www.日韩视频| 国产亚洲激情视频在线| 欧美激情videoshd| 欧美激情一区二区三区成人| 亚洲影院色在线观看免费| 久久影院在线观看| 久久免费少妇高潮久久精品99| 91九色国产视频| 欧美午夜宅男影院在线观看| 日韩av不卡电影| 国产综合香蕉五月婷在线| 96精品久久久久中文字幕| 久久成人精品一区二区三区| 亚洲free性xxxx护士hd| 亚洲美女免费精品视频在线观看| 欧美精品免费在线观看| 亚洲欧美日韩成人| 日韩精品中文字| 97视频免费在线看| 精品女同一区二区三区在线播放| 日韩欧美综合在线视频| 成人性生交大片免费看视频直播| 亚洲欧美在线磁力| 中文字幕欧美日韩精品| 68精品国产免费久久久久久婷婷| 国产一区二区三区在线观看视频| 日韩欧美亚洲国产一区| 奇米影视亚洲狠狠色| 日本在线观看天堂男亚洲| 日韩欧美国产激情| 国内精品国产三级国产在线专| 日韩欧美国产网站| 日韩精品在线免费观看| 欧美怡春院一区二区三区| 亚洲精品一区在线观看香蕉| 国产精品久久久久免费a∨| 中文字幕日韩视频| 精品久久久免费| 久久精品国产欧美激情| 国产精品扒开腿做| 国产在线观看不卡| 亚洲精品xxx| 萌白酱国产一区二区| 亚洲色图欧美制服丝袜另类第一页| 欧美色视频日本高清在线观看| 亚洲精品一区在线观看香蕉| 国产精品视频白浆免费视频| 国产在线一区二区三区| 日本中文字幕久久看| 国产精品观看在线亚洲人成网| 亚洲国产精品小视频| 91国自产精品中文字幕亚洲| 98视频在线噜噜噜国产| 亚洲激情自拍图| 日韩欧美亚洲成人| 欧美激情精品久久久久久蜜臀| 亚洲最大的成人网| 97精品欧美一区二区三区| 欧美黄色小视频| 91老司机在线| 在线观看日韩欧美| 亚洲精品理论电影| 一本一道久久a久久精品逆3p| 久久综合国产精品台湾中文娱乐网| 成人午夜高潮视频| 欧美日本亚洲视频| 亚洲欧美精品一区| 91亚洲精品在线观看| 亚洲欧美变态国产另类| 色妞欧美日韩在线| 欧美贵妇videos办公室| 国产香蕉97碰碰久久人人| 国产精品久久久久久久久免费看| 日韩免费观看在线观看| 亚洲第一免费网站| 欧美有码在线观看视频| 国产丝袜精品视频| 亚洲国产精品va在线看黑人| 97香蕉超级碰碰久久免费的优势| 欧美国产精品va在线观看| 亚洲高清在线观看| 国产亚洲aⅴaaaaaa毛片| 丰满岳妇乱一区二区三区| 国产成人精品午夜| 亚洲欧美制服中文字幕| 91九色综合久久| 欧美亚洲免费电影| 97碰碰碰免费色视频| 九九精品在线视频| 国产精品嫩草影院一区二区| 亚洲人免费视频| 欧美国产精品va在线观看| 91亚洲国产成人精品性色| 黑人巨大精品欧美一区二区一视频| 欧美三级欧美成人高清www| 伊人久久久久久久久久| 色妞欧美日韩在线| 国产精品www网站| 中文字幕少妇一区二区三区| 日本欧美爱爱爱| 欧美国产高跟鞋裸体秀xxxhd| 欧美性xxxxx极品| 亚洲日本成人网| 日韩在线国产精品| 久久欧美在线电影| 一本一本久久a久久精品牛牛影视| 国产97免费视| 国内精品久久久久久久久| 久久久av电影| 最近2019中文字幕mv免费看| 91亚洲精品视频|