代码之家  ›  专栏  ›  技术社区  ›  Ramiz Uddin

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

  •  0
  • Ramiz Uddin  · 技术社区  · 15 年前

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

    而不是硬编码解决方案路径和 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 回复  |  直到 15 年前
        1
  •  2
  •   Community CDub    7 年前

    据我所知, %~p0 就是你要找的。

    例如,如果创建一个包含

    echo %~p0
    pause 
    

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

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