我正在尝试从powershell调用批处理脚本。我正在使用命令启动进程
Start-Process D:Homewareinstall.bat -wait
批处理文件调用.exe文件。
我的问题是启动进程工作正常,调用批处理文件,而.exe文件未触发。
安装内容.bat ..InstallVersionInstallVersion.exe
默认情况下Start-Process
在与调用 PowerShell 实例的工作目录相同的目录中启动新进程。
因此,不能只在批处理文件中使用.exe
文件的相对路径。
如果路径是相对于批处理文件的位置,请按如下方式从批处理文件中调用.exe
:
"%~dp0..InstallVersionInstallVersion.exe"
%0
包含批处理文件本身的文件路径,修饰符~dp
从该路径中提取驱动器(d
)和目录路径(p
,包括尾随)部分。
如果无法编辑批处理文件,只需使用 ' -WorkingDirectory
参数Start-Process
确保将工作目录设置为批处理文件所在的目录:
Start-Process D:Homewareinstall.bat -wait -WorkingDirectory D:Homeware