2017-04-20 98 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没有关系。说它无法找到该文件。 –