windows - 如何在 Powershell 中引用多个路径?
问题描述
我正在编写一个脚本,该脚本从位于脚本根文件夹的多个目录中提取。当我使用这个时:
$ScriptPath="$PSScriptRoot\Scripts"
$BinaryPath="$PSScriptRoot\Binaries"
$DataFolderPath="$PSScriptRoot\Data"
PowerShell 抱怨 3 条路径中的 2 条说找不到它们。
我也试过这个,但没有运气。
$ScriptPath=Join-Path (Split-Path $PSScriptRoot) -ChildPath Scripts
$BinaryPath=Join-Path (Split-Path $PSScriptRoot) -ChildPath Binaries
$DataFolderPath=Join-Path (Split-Path $PSScriptRoot) -ChildPath Data
解决方案
你怎么运行这个?
This...$PSScriptRoot
只会在您运行完整脚本时填充,而不是在您在 ISE/VSCode 或其他编辑器窗格窗口中运行时填充。
最后$PSScriptRoot
,正如记录的那样......
关于自动变量
PSScriptRoot 包含调用的脚本的完整路径
...因此,如果您不在具有该组命名子文件夹的源目录中,那么您应该期望这会失败。
如果您想让它工作,那么您必须在开始之前检查子文件夹是否存在,如果不存在,那么您的脚本应该创建它们,然后运行其余代码。
推荐阅读
- python - pandas groupby中的非重叠滚动窗口
- c# - 没有可执行代码的顶级程序无法编译
- c - 将湿度传感器插入 mplab
- javascript - 错误 - > SyntaxError:JSON.parse 处的 JSON 输入意外结束(
) - lambda - 如何在 Arduino 中定义 lambda 数组?
- performance - 如何衡量LC3汇编程序的性能?
- css - ReactJS 导入的 css 不起作用 - 结合 JSX 的内联 css 正在工作
- python - 在打印语句中插入中间名变量的条件语句,或者,去除名字和中间名变量之间的空格?
- python - 尝试在 Ubuntu 上使用“sudo”运行 python cli 应用程序时出现“找不到命令”
- algorithm - 如何证明这种确定性算法的近似比是合理的。(加权 MAX-k-Cut)