我如何知道默认批处理文件目录?

时间:2010-02-03 08:00:04

标签: sharepoint deployment batch-file dos

我正在为SharePoint部署创建批处理文件。批处理将执行解决方案安装和配置,创建Web应用程序并在创建的Web应用程序上恢复 .dat 文件。

而不是硬编码解决方案路径和 .dat 我希望批处理知道它位于 root 。因此,如果我将此文件夹移动到其他位置,我将不需要更新路径。

  

是否有批处理命令的关键字可以告诉我的立场   (批处理文件目录)?

批处理脚本示例:

@SET STSADM="c:\program files\common files\microsoft shared\web server extensions\12\bin\stsadm"

Echo copy solution files ...
%STSADM% -o addsolution -filename SmilingGoat.SharePoint.WebParts.Rss.wsp
%STSADM% -o deploysolution -name SmilingGoat.SharePoint.WebParts.Rss.wsp -immediate -allowgacdeployment -allcontenturls

%STSADM% -o addsolution -filename ReturnOfSmartPartv1_3.wsp
%STSADM% -o deploysolution -name ReturnOfSmartPartv1_3.wsp -immediate -allowgacdeployment -allcontenturls

Echo creating Learning Pitch application ... 
%STSADM% -o unextendvs -url http://server:70

%STSADM% -o restore -url http://server:70 -filename 2010.02.03.dat -overwrite

IISRESET

PAUSE

感谢。

1 个答案:

答案 0 :(得分:2)

据我了解,%~p0正是您所寻找的。

例如,如果您创建包含

的文件
echo %~p0
pause 

并从c:\temp运行它将输出“c:\ temp”。

编辑:实际上this answer in SO解释了这个想法。