Pra*_*een 2 powershell cmd batch-file
请让我知道如何从 PowerShell 脚本以管理员身份调用 .cmd 文件:
下面的第二行应以管理员身份从 PowerShell 脚本打开:
Set-Location "C:\client\service"
Invoke-Item "C:\client\service\_install.cmd"
Run Code Online (Sandbox Code Playgroud)然后命令提示符应该在执行后等待。这需要在 PowerShell 脚本中处理,无法写入_install.cmd文件。
批处理脚本在 CMD.exe 中运行,因此您需要以管理员身份启动 CMD.exe 进程。
Start-Process -FilePath "C:\Windows\System32\cmd.exe" -ArgumentList "/k","C:\client\service\_install.cmd" -Verb RunAs -Wait
Run Code Online (Sandbox Code Playgroud)
Start-Process是启动进程的 cmdlet-FilePath "C:\Windows\System32\cmd.exe"启动cmd.exe进程-ArgumentList "/k","C:\client\service\_install.cmd"告诉cmd在运行脚本后让控制台保持打开状态(这是您想要的吗?如果不是,请替换为,以便/c完成后 cmd 窗口将关闭)。第二个参数是你的脚本。-Verb RunAs告诉Start-Process以管理员身份启动该进程(如果启用,您将收到一个 UAC 窗口)-Wait告诉您Start-Process等待该过程完成。这意味着cmd /k退出命令提示符后。如果您已将其更改为cmd /c,那么它将等待脚本完成。如果需要更改 cmd 文件内的工作目录,则需要修改 .cmd,或编写包装脚本,例如:
@echo off
cd /d C:\client\service
C:\client\service\_install.cmd
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3546 次 |
| 最近记录: |