VSCode中如何获取一个文件相对于另一个文件的路径?
获取文件B相对于文件A的相对路径方法
方法1:IDE/编辑器一键复制(最便捷)
大部分主流编辑器都自带复制相对路径的功能,操作逻辑统一:
- 在侧边栏文件树中找到文件B,右键点击调出菜单
- 按住
Shift键(部分编辑器无需按),找到「复制相对于文件A的路径」/「复制相对路径」选项,点击即可直接拿到可直接用于导入的相对路径
注:如果编辑器没有自动关联当前打开的文件A作为基准,可先右键点击文件A,选择「复制为根目录」/「设置为相对路径基准」后,再执行上述文件B的复制操作
方法2:命令行快速生成
如果是在终端环境操作,直接执行对应命令即可生成:
Linux/macOS 环境
realpath --relative-to="文件A的所在目录路径" "文件B的完整路径"
Windows 环境(PowerShell)
$aParentPath = Split-Path -Parent "文件A的完整路径" $bFullPath = "文件B的完整路径" [System.IO.Path]::GetRelativePath($aParentPath, $bFullPath)
方法3:手动计算规则
临时需要手动拼接时遵循以下规则即可:
- 先对比文件A和文件B的目录结构,找到两个文件的共同父目录
- 从文件A的所在位置向上退到共同父目录:每向上退一层加一个
../ - 退到共同父目录后,再拼接父目录到文件B的层级路径、以及文件B的名称即可
举个实际示例:
文件A路径:src/components/Form/Input.js
文件B路径:src/utils/request.js
二者共同父目录为src,从A的位置需要向上退2层才能到src,所以前缀加../../,再拼接utils/request.js,最终得到的相对路径就是../../utils/request.js
内容的提问来源于stack exchange,提问作者Albert Hoffman
相关产品推荐
相关产品推荐

