首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么__dirname不返回绝对目录路径?

__dirname是Node.js中的一个全局变量,用于获取当前模块的目录名。它返回的是当前模块文件所在的目录的绝对路径。

__dirname不返回绝对目录路径的原因是因为它是相对于当前模块文件的路径,而不是相对于执行脚本的路径。在Node.js中,模块可以被多个脚本引用,而每个脚本的执行路径可能不同。因此,__dirname返回的是当前模块文件所在的目录的绝对路径,而不是执行脚本的绝对路径。

__dirname的优势在于可以方便地获取当前模块文件所在的目录路径,可以用于构建文件路径、加载其他模块等操作。它的应用场景包括但不限于:

  1. 构建文件路径:通过拼接__dirname和文件名,可以方便地构建当前模块文件所在目录下的文件路径,避免了手动拼接路径的繁琐和容易出错。
  2. 加载其他模块:在Node.js中,可以使用require函数加载其他模块。通过结合__dirname,可以方便地加载当前模块文件所在目录下的其他模块,而不需要关心执行脚本的路径。
  3. 配置文件路径:在开发中,经常需要读取配置文件。通过结合__dirname,可以方便地构建配置文件的路径,确保配置文件的位置与当前模块文件的位置保持一致。

腾讯云提供了一系列与云计算相关的产品,其中包括云服务器、云数据库、云存储等。具体推荐的腾讯云产品和产品介绍链接地址如下:

  1. 云服务器(CVM):提供弹性计算能力,支持多种操作系统和应用场景。了解更多信息,请访问:腾讯云云服务器
  2. 云数据库(CDB):提供可扩展的数据库解决方案,支持多种数据库引擎和存储引擎。了解更多信息,请访问:腾讯云云数据库
  3. 云存储(COS):提供高可靠、低成本的对象存储服务,适用于各种数据存储和应用场景。了解更多信息,请访问:腾讯云云存储

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求和情况进行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

php dirname(__FILE__) 获取当前文件的绝对路径

php echo __FILE__ ; // 取得当前文件的绝对地址,结果:D:\www\test.php echo dirname(__FILE__); // 取得当前文件所在的绝对目录,结果:D...> 使用方法提示,  dirname(__FILE__) 取到的是当前文件的绝对路径,也就是说,比起相对路径,查找速度是最快的。 ...如果重复一次可以把目录往上提升一个层次:  比如:$d = dirname(dirname(__FILE__));  其实就是把一个目录dirname()做参数了.因为dirname()返回最后的目录不带...\\或者是/  所以重复使用的时候可以认为 dirname() 把最下层的目录当成文件名来处理了.照常返回  当前目录的上级目录.这样重复就得到了它的上一级的目录. .../filename.php');  __FILE__的路径是当前代码所在文件  dirname(dirname(__FILE__));得到的是文件上一层目录名  dirname(__FILE__)

3K50

shell获取当前工作目录绝对路径

一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本或者远程调用某个脚本时,可能使用相对路径更加灵活一点,因为你不知道用户会在哪个目录执行你的程序...,于是问题就来了,如何获取当前正在执行脚本的绝对路径?...这个$0有可能是好几种值,跟调用的方式有关系: 使用一个文件调用bash,那$0的值,是那个文件的名字(没说是绝对路径噢) 使用-c选项启动bash的话,真正执行的命令会从一个字符串中读取,字符串后面如果还有别的参数的话...,使用从$0开始的特殊变量引用(跟路径无关了) 除此以外,$0会被设置成调用bash的那个文件的名字(没说是绝对路径) 简单介绍一下获取方法如下: #!...base_dir=$(cd "$(dirname "$0")";pwd) dirname  $0 ,取得当前执行的脚本文件的父目录 cd  dirname $0 ,进入这个目录(切换当前工作目录) pwd

11.7K70
  • HTML引入文件的绝对路径、相对路径、根目录

    什么是绝对路径绝对路径指的是文件的真正路径,使用绝对路径链接外部资源,如:图片、超级链接、flash、音频、视频等等。...="D:/images/aaa.jpg"> 使用绝对路径必须输入完整的描述路径,这种方法指向的链接目标地址清晰明确,但有个缺点就是一旦文件被移动或删除久会造成文件无法显示,需要重新设置相关链接。...相对路径里常使用“../”来表示上一级目录,如果有多个上一级目录,可以使用多个“../”表示为上上级; 如果链接到当前目录下,只需输入被链接对象的名称即可,如:aaa.jpg; 如果链接到下一级目录,只需输入该目录名...相对路径适合网站的内部引用,只要是在同一个站点,就可以自由的在文件之间构建链接,不受站点所处服务器的影响,这种书写形式省略了绝对路径中相同的部分,可以在站点文件所在服务器地址发生改变时,文件夹的内部链接不会出现问题...声明:本文由w3h5原创,转载请注明出处:《HTML引入文件的绝对路径、相对路径、根目录》 https://www.w3h5.com/post/44.html (adsbygoogle

    10.2K10

    【HTML】HTML 标签 ④ ( 文件路径 | 相对路径 | 绝对路径 | 同级目录 | 下一级目录 | 上一级目录 )

    文章目录 一、文件路径 1、绝对路径 2、相对路径 ( 同级目录访问 | 下级目录访问 | 上级目录访问 ) 一、文件路径 ---- 一个前端项目 , 可能有几百上千个 html , css , javascript...文件 , 这些文件都需要通过不同的目录层级进行整理存放 ; 访问文件时 , 需要使用 文件路径 进行访问 , 文件路径 分为 相对路径绝对路径 ; 文件准备 : 以 D 盘下的 HTML 目录作为项目的根目录...│ hello2.html │ └─index │ index.html │ └─image image.jpg 1、绝对路径 绝对路径很容易理解..., 就是以当前网站部署的服务器为参考基础 ; 如果要访问 hello2.html 目录 , 直接使用其在 文件系统 中的 路径 D:\HTML\hello2.html 访问即可 ; 绝对路径访问代码示例...| 下级目录访问 | 上级目录访问 ) 相对路径 是以 当前 的 网页为基准 , 分为 三种情况 : 访问同级目录 : 直接使用 文件名称 进行访问 ; 访问下级目录 : 直接使用 目录 + 文件名称

    1.8K11

    网站目录绝对路径相对路径-零基础搭建wordpress教程

    二、相对路径绝对路径 1、在网站中绝对路径指的是硬盘中文件的真实物理路径。...比如 1.jpg 这个图片文件的存放路径是 D:/资料/网站/html/第一节/img,那么 1.jpg 文件的绝对路径就是 D:/资料/网站/html/第一节/img/1.jpg,你去这个文件夹就能找到并打开这个文件...2、绝对路径的缺点在于你在本地电脑上使用 D:/web/img/1.jpg 是没问题的,但是上传到服务器上之后,网站文件夹不一定放在 D 盘,也许在 C 盘、E 盘、F 盘等等,这时候你还拿 D:/web...比如 1.html 存放在 D:/资料/网站/html/第一节,而 1.jpg 存放在 D:/资料/网站/html/第一节/img,那么这时候代码应该写成 为什么这么写呢...相对路径使用/作为文件夹分隔符,而绝对路径使用/或\作为分隔符。在本例中因为 img 是第一节下面的文件夹,所以说不用再加/字符了。 3.2、相对路径中使用“../”表示上一级文件夹。

    3.4K10

    HTML中如何表示根目录?HTML的绝对路径与相对路径

    路径指文件存放的位置,在网页中利用路径可以引用文件,插入图像、视频等。表示路径的方法有两种:相对路径绝对路径。以下讨论均是在HTML环境下进行。 HTML中如何表示根目录?...代码示例 "/aaa" //表示跟目录下的aaa "...../aaa" //表示当前目录的上级目录下的aaa "bbb/aaa" //表示当前目录的bbb目录下的aaa HTML之绝对路径与相对路径 相对路径 相对路径是指目标相对于当前文件的路径,网页结构设计中多采用这种方法来表示目标的路径..../ :代表文件所在的目录(可以省略写) ../ :代表文件所在的父级目录 ../../ :代表文件所在的父级目录的父级目录 / :代表文件所在的根目录 值得注意的是,(/ :代表文件所在的根目录)其实可以理解成项目内部的绝对路径.../html/css/css1/000.css"/> 绝对路径 绝对路径是指完整的网址,假设图一中项目的网站域名为www.quanbaike.com,那么000.css的绝对路径应该是 https://www.quanbaike.com

    11.8K30

    web前端入门到实战:HTML引入文件的绝对路径、相对路径、根目录

    什么是绝对路径绝对路径指的是文件的真正路径,使用绝对路径链接外部资源,如:图片、超级链接、flash、音频、视频等等。...代码如下: 1、引入网络上的资源: 2、引入电脑本地的绝对路径,如D盘下images文件夹里名称为“aaa.jpg”的图片: 使用绝对路径必须输入完整的描述路径,这种方法指向的链接目标地址清晰明确,但有个缺点就是一旦文件被移动或删除久会造成文件无法显示,需要重新设置相关链接。...相对路径里常使用“../”来表示上一级目录,如果有多个上一级目录,可以使用多个“../”表示为上上级; 如果链接到当前目录下,只需输入被链接对象的名称即可,如:aaa.jpg; 如果链接到下一级目录,只需输入该目录名...相对路径适合网站的内部引用,只要是在同一个站点,就可以自由的在文件之间构建链接,不受站点所处服务器的影响,这种书写形式省略了绝对路径中相同的部分,可以在站点文件所在服务器地址发生改变时,文件夹的内部链接不会出现问题

    2.4K30

    Linux的相对路径绝对路径、cd命令、创建和删除目录、rm命令

    相对路径绝对路径: 相对路径就是相对当前所在目录来说的路径绝对路径就是相对/(根)目录来说的路径。相对路径不以/开头,绝对路径以/开头,./abc是相对路径(..../表示当前路径),/abc是绝对路径。但是:~/abcd/123/是一个绝对路径,因为~符号表示的是用户的家目录,所以这个是绝对路径。   例如ls命令后面跟的这个路径是相对于root目录的: ?...绝对路径: ? pwd可以查看当前在哪个目录下: ? echo $PWD 也可以查看当前在哪个目录下: ? whoami用于查看当前用户的名字: ? id可以查看uid等: ?...cd如果不加任何参数的话,就会进入到用户的家目录下,如果你当前用户是root,那么就会进入到root目录下: ? cd后面加目录名就可以进入哪个目录下: ?...cd - 命令可以回到上一次所在的目录下: ? cd ~ 命令可以进入到当前用户的家目录下,和cd的意义是一致的: ? cd . 进入当前目录: ? cd .. 进入到上一层目录: ?

    7.7K30

    为什么 Vite 的请求有时候是相对路径,有时候是 @fs + 绝对路径

    在开发项目时,我发现有时候请求资源的路径是相对路径,有时候是 /@fs/ 开头的绝对路径,这是为什么呢? Vite 的请求路径种类 • 相对路径,相对于根目录路径。...如果文件在 Vite root 根目录中,则直接使用相对路径 但如果在 Vite root 根目录外,相对路径就需要使用 ../ 这种,这种形式不能马上看出文件的位置,因此直接使用绝对路径更好,但是需要跟相对路径做区分...如果访问了允许范围外的文件,Vite 就会返回以下错误页面。 我们通过 localhost 访问的,别人用 localhost + 绝对路径也是访问它自己的机器,这应该没什么安全问题?...就会返回 403 页面,从而保证了安全性 为什么直接用 url 判断,而是要先将 url 标准化为绝对路径再判断?...总结 本文以一个开发中的一个小问题作为开头,提出疑问:为什么 Vite 的请求有时候是相对路径,有时候是 /@fs/ 开头 + 绝对路径

    2.1K30

    【linux命令讲解大全】107.pwd 命令:显示当前工作目录绝对路径

    pwd 显示当前工作目录绝对路径。 补充说明 pwd(英文全拼:print working directory)命令用于显示用户当前所在的工作目录(以绝对路径显示)。...-P: 打印当前工作目录的物理位置。 返回返回状态为成功除非给出了非法选项或是当前目录无法读取。 注意 该命令是bash内建命令,相关的帮助信息请查看help命令。...返回返回状态为成功除非给出了非法选项或是当前目录无法读取。...例子 查看当前所在路径 [root@localhost var]# pwd /var 显示软连接文件最终指向的文件路径 [root@localhost ~]# cd /var/ # 进入/var目录...[root@localhost mail]# pwd # 默认,使用连接文件,直接显示连接文件全路径

    51410

    为什么 Vite 的请求有时候是相对路径,有时候是 @fs + 绝对路径

    在开发项目时,我发现有时候请求资源的路径是相对路径,有时候是 /@fs/ 开头的绝对路径,这是为什么呢?Vite 的请求路径种类相对路径,相对于根目录路径。...如果文件在 Vite root 根目录中,则直接使用相对路径但如果在 Vite root 根目录外,相对路径就需要使用 ../ 这种,这种形式不能马上看出文件的位置,因此直接使用绝对路径更好,但是需要跟相对路径做区分...如果访问了允许范围外的文件,Vite 就会返回以下错误页面。图片我们通过 localhost 访问的,别人用 localhost + 绝对路径也是访问它自己的机器,这应该没什么安全问题?...就会返回 403 页面,从而保证了安全性为什么直接用 url 判断,而是要先将 url 标准化为绝对路径再判断?...总结本文以一个开发中的一个小问题作为开头,提出疑问:为什么 Vite 的请求有时候是相对路径,有时候是 /@fs/ 开头 + 绝对路径

    3.8K20

    系统模块

    err,错误信息 如果文件读取正确,err 是 null,返回doc doc是文件读取的结果 写入文件内容 fs.writeFile('文件路径文件名称",'数据',callback)...,系统会自动在该路径开辟一个文件 3.系统模块path路径操作 为什么要进行路径拼接 不同操作系统的路径分隔符统一 /public/uploads/avatar Windows上是\ /...') ; //输出结果itcast\a\b\c.css console.log (finialPath) ; 5.相对路径VS绝对路径 大多数情况下使用绝对路径,因为相对路径有时候相对的是命令行工具的当前工作目录...在读取文件或者设置文件路径时都会选择绝对路径 使用__dirname获取当前文件所在的绝对路径 requrie方法中的路径可以使用相对路径 const fs = require(..., '01-hello.js')); // __dirname获取当前文件所在的绝对路径 fs.readFile(path.join(__dirname, '01-hello.js'), 'utf-8'

    25430

    系统模块

    如果文件读取正确,err 是 null,返回doc doc是文件读取的结果 写入文件内容 fs.writeFile('文件路径文件名称",'数据',callback); const...,系统会自动在该路径开辟一个文件 3.系统模块path路径操作 为什么要进行路径拼接 不同操作系统的路径分隔符统一 /public/uploads/avatar Windows上是\ /...') ; //输出结果itcast\a\b\c.css console.log (finialPath) ; 5.相对路径VS绝对路径 大多数情况下使用绝对路径,因为相对路径有时候相对的是命令行工具的当前工作目录...在读取文件或者设置文件路径时都会选择绝对路径 使用__dirname获取当前文件所在的绝对路径 requrie方法中的路径可以使用相对路径 const fs = require(..., '01-hello.js')); // __dirname获取当前文件所在的绝对路径 fs.readFile(path.join(__dirname, '01-hello.js'), 'utf-8'

    54430

    作为一个前端工程师也要掌握的几种文件路径知识

    : 总是返回被执行的 js 所在文件夹的绝对路径 __filename: 总是返回被执行的 js 的绝对路径 process.cwd(): 总是返回运行 node 命令时所在的文件夹的绝对路径 ./:...跟 process.cwd() 一样,返回 node 命令时所在的文件夹的绝对路径 为什么说上面是暂时得到的结论,因为是有错误的,再看一段代码:我们在path.js中加上这句代码 exports.A =...路径知识总结: __dirname:获得当前执行文件所在目录的完整目录名 __filename:获得当前执行文件的带有完整绝对路径的文件名 process.cwd():获得当前执行node命令时候的文件夹目录名.../与process.cwd()一样,使用require时候,与__dirname一样 只有在 require() 时才使用相对路径(./, ../) 的写法,其他地方一律使用绝对路径,如下: // 当前目录下...,把规范的路径规范化。

    51310

    bash shell:获取当前脚本的绝对路径(pwdreadlink)

    https://blog.csdn.net/10km/article/details/51906821 有时候,我们需要知道当前执行的输出shell脚本的所在绝对路径,可以用dirname...我们知道 dirname 可以获取一个文件所在的路径dirname的用处是: 输出已经去除了尾部的”/”字符部分的名称;如果名称中包含”/”, 则显示”.”(表示当前目录)。...下面是dirname的命令行说明: ? 从上面的描述可知道,直接从dirname返回的未必是绝对路径,取决于提供给dirname的参数是否是绝对路径。...所以下面这样的代码中SHELL_FOLDER中不一定是绝对路径 SHELL_FOLDER=$(dirname "$0") 需要用cd和pwd命令配合获取脚本所在绝对路径,正确的写法是这样的, SHELL_FOLDER...所以用readlink命令我们可以直接获取$0参数的全路径文件名,然后再用dirname获取其所在的绝对路径: SHELL_FOLDER=$(dirname $(readlink -f "$0")) 参考

    8.7K30

    细说nodejs的path模块

    /ext/foo/') // foo (尾部目录分隔符被忽略)dirname (获取路径目录名)path.dirname(path)path:文件/目录路径返回值:path 路径目录名注意:如果 path.../foo/bar (相对路径/绝对路径均可)path.dirname('/foo/bar/baz/'); // /foo/bar (尾部目录分隔符被忽略)path.dirname('/foo/bar/baz...resolve(将路径路径片段的序列解析为绝对路径)path.resolve(...paths)paths: 路径路径片段的序列返回值:路径路径片段序列解析为绝对路径。...() 将返回当前工作目录绝对路径const path = require("path");//当前工作目录为 \Stone\node\node\path_modulepath.resolve('/foo...dirname,filename__dirname:可以看作是 nodejs 中的全局变量,它始终表示当前执行文件所在目录的完整目录名(绝对路径)__filename:可以看作是 nodejs 中的全局变量

    90220
    领券