在powershell中创建相对于工作目录的符号链接

问题描述 投票:0回答:1

如何在Powershell中建立相对于工作目录的符号链接,而不是相对于路径(不更改我的工作目录)

在 GNU/linux 命令中我可以这样做

ln -s -r ./change/99.md ./abuse/change/99.md

导致

.
├── abuse
│   └── change
│       └── 99.md -> ../../change/99.md
└── change
    └── 99.md

所以这在 Powershell 7.1 中不起作用

New-Item -ItemType SymbolicLink -Path ".\abuse\change\99.md" -Target ".\change\99.md"
powershell
1个回答
0
投票

虽然 PowerShell(核心)7 - 与 Windows PowerShell(旧版、随 Windows 一起提供、仅限 Windows 的 PowerShell 版本,其最新和最后一个版本为 5.1) - 支持 存储 相对目标路径 例如在符号链接(符号链接)中,您 需要将它们 显式 传递给

New-Item
cmdlet 的
-Target
参数。

相比之下(至少从 PowerShell 7.4.x 开始),

New-Item
提供类似于 GNU
ln
-r
选项
的参数,其中目标的相对路径是 相对于链接本身的位置,从创建时给定的一个推断出

因此,请自行确定所需的相对路径,并直接将其作为链接目标传递:

  New-Item -ItemType SymbolicLink .\abuse\change\99.md -Target ..\..\change\99.md
© www.soinside.com 2019 - 2024. All rights reserved.