2016-08-30 306 views
0

Powershell的相對路徑,我想指的文件,該文件是在同一回購的PowerShell腳本相對路徑。到回購文件

我有以下目錄結構。

repo/ 
├── files 
│   └── scripts.sh 
│   
├── powershell_scripts 
     └── my_powershell.ps1 
my_powershell.ps1

我要引用scripts.sh。我試圖在PowerShell腳本中使用$PSScriptRoot,但它沒有按照我想要的方式工作。

我想my_powershell.ps1皮卡scripts.sh與目錄結構。

有誰知道如何做到這一點?

感謝

+0

我看你有沒有PSV2列爲標籤。你真的會在版本2上運行這個嗎? – TheMadTechnician

+0

對PowerShell的V3.0運行它 – roy

回答

1

好了,在V3或更高,這是簡單的。如果你想要的路徑,「回購」的文件夾,你可以簡單地指到當前文件夾的父如:

$Repo = Resolve-Path "$PSScriptRoot\.." 

這將讓你回購的文件夾對象。從那裏你可以到達你的腳本文件夾。

,或者直接參考scripts.sh文件,你可以這樣做:

Resolve-Path "$PSScriptRoot\..\files\scripts.sh" 
+0

對不起,我沒有得到這一點,可以指定完整的命令,我需要用它來指代'scripts.sh'成'my_powershell.ps1' – roy

+0

我試過'$回購=解決路徑「$ PSScriptRoot \ ..「''然後寫主機$ Repo'其打印'C:\' – roy

+0

是指'scripts.sh'成'my_powershell.ps1'怎麼樣?嘗試'Get-Content「$ PSScriptRoot \ .. \ files \ scripts.sh」' – TheMadTechnician