gpt4 book ai didi

node.js - 获取node.js中文件描述符的文件路径/名称

转载 作者:太空宇宙 更新时间:2023-11-03 23:28:21 26 4
gpt4 key购买 nike

如何从 Node 中的文件描述符获取完整路径?

var fs = require('fs')
var fd = fs.openSync('package.json', 'r')

console.log(fd) // 10

console.log(get_file_path_from_fd(fd)) // HELP

编辑:我找到了this

> fs.openSync('.', 'r')
10
> fs.readlinkSync('/proc/self/fd/10')
'/home/alfred/repos/test

但我在 Mac 中没有找到 proc 文件夹

最佳答案

考虑到您要加载的文件与脚本位于同一目录中,您可以仅使用 __dirname 全局变量来查找当前目录。

https://nodejs.org/docs/latest/api/globals.html#globals_dirname

事实上,我更喜欢使用 __dirname 作为 fs 模块路径的一部分来加载文件,这是一种很好的做法。例如,这是来 self 拥有的 Discord 机器人...

var tokenJSON = require( __dirname + '/json/discord_token.json');

编辑:因此将其放入答案本身中;您的 fd 变量包含从文件加载的数据,但它与最初来自的文件完全断开连接。如果您要加载任意文件并且您想要路径,我们需要更多地了解如何向您提供该文件。当文件提供给您时,应该包含一个路径(以便脚本可以找到数据!),这就是您想要的。如果没有像您的示例中那样的路径,则意味着相对路径相同,并且是当前目录。

关于node.js - 获取node.js中文件描述符的文件路径/名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41211128/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com