bat接收powershell返回值


声明:本文由焖哥(1328486072)投稿,感谢分享!

powershell帮忙bat

bat 实在太老了,功能不行了,如果你不想彻底丢弃它,那么你就需要用powershell的先进功能帮助它吧。
用powershell脚本,函数,干活,把结果返回给bat,这也是bat,powershell之间的交互,算是把powershell嵌入bat用。

os—运行—>cmd—>bat—>powershell.exe–>一个ps1脚本

调用一个powershell脚本,获取返回值

输入:powershell脚本所在的绝对路径。设此值为d:\aaa.ps1
输出:一个值。设此值为:123,返回并保存在a.bat中的var变量中。

a.bat --->aaa.ps1--|
    ^________________|
---------a.bat---------
@echo off
set pscmdline='C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe -file d:\aaa.ps1'
for /f %%a in (%pscmdline%) do (set var=%%a)
echo %var%
---------aaa.ps1---------
return   123

 

调用一个powershell脚本,获取一个布尔返回值

输入:powershell脚本所在的绝对路径。设此值为d:\ddd.ps1
输出:一个值。设此值为:true,返回并保存在d.bat中的var变量中。

d.bat --->ddd.ps1--|
    ^________________|
---------d.bat---------
@echo off
set pscmdline='C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe -file d:\ddd.ps1'
for /f %%a in (%pscmdline%) do (set var=%%a)
echo %var%
---------ddd.ps1---------
return   $true
本文链接: https://www.pstips.net/bat-recieve-ps-result.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

关于 Mooser Lee

我是一个Powershell的爱好者,创建了PowerShell中文博客,热衷于Powershell技术的搜集和分享。本站部分内容来源于互联网,不足之处敬请谅解,并欢迎您批评指正。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注