2017-04-20 216 views
0

我目前正試圖拉一個powershell腳本駐留在項目子文件夾中。當我的batch文件運行時,它會嘗試在項目中查找文件路徑,但我沒有取得任何成功。團隊城市和批處理文件

我第一次嘗試通過子文件夾直接,因爲它是在TeamCity的:

set file = "subFolder\myPowershell.ps1" 

我我試圖第二次嘗試撥打:

set file = %~dp0"subFolder\myPowershell.ps1" 

然後我嘗試:

set file = %cd%"subFolder\myPowershell.ps1" 

仍然沒有成功。如何從batch文件中獲得Teamcity項目文件夾中此powershell腳本的路徑?

+0

'%〜dp0「subFolder \ myPowershell.ps1」'對我來說引號沒有正確定位。你試過'「%〜dp0subFolder \ myPowershell.ps1」'? – Laf

+0

'set「file =%〜dp0subFolder \ myPowershell.ps1」'將純路徑導入變量'file'而沒有周圍的引號...... – aschipfl

+0

@Laf是的,我試圖在引用中包含'%〜dp0'。 –

回答

0

想通了。我必須在%1的前面加上文件目錄,teamcity正確地選擇了它。

set file="%1\subFolder\myPowershell.ps1" 

謝謝大家的時間!

1

這裏就是你需要做的:

set file="%~dp0project sub folder\myPowershell.ps1" 

%~dp0已經包含尾隨反斜槓,因此不需要額外的一個。您還會注意到set命令中的=兩邊沒有空格,這也是必不可少的。

+0

這沒有奏效。我刪除了所有的空間,仍然沒有。 –

+1

由於我發佈的代碼完全正確,因此問題出在您提供給我們的信息上。因此,請將腳本的其餘部分與顯示文件/文件夾結構的樹一起發佈。 – Compo

+0

是的,它確實有效,但是與teamcity沒有關係。說它無法找到該文件。 –