Arc*_*Set 1 powershell exit-code
我可以通过退出代码退出PowerShell应用程序:
exit 59
Run Code Online (Sandbox Code Playgroud)
如何使用自定义退出代码说明退出?
exit 59, "Somethings Wrong"
Run Code Online (Sandbox Code Playgroud)
你不能.在PowerShell环境中,cmdlet可以相互返回任何.Net对象(字符串,异常等),但是当您exit,PowerShell进程退出,并且所有它都可以返回到Windows /调用进程是一个整数.
https://en.wikipedia.org/wiki/Exit_status#Windows
没有地方可以自定义描述,也无法获得任何其他描述.多年的传统计算和向后兼容性限制回到处理器很小,内存昂贵,并且返回值(我推测)一个处理器寄存器值或类似的情况.
当您在命令提示符下并运行以下命令时:
c:\> powershell
Windows PowerShell
Copyright (C) 2014 Microsoft Corporation. All rights reserved.
PS C:\> exit 10
c:\> echo %ERRORLEVEL%
10
Run Code Online (Sandbox Code Playgroud)
您看到PowerShell进程退出并返回值为10.但是没有%ERRORDESCRIPTION%或类似的标准功能可以放置任何其他内容.对于你想要做的事情,没有更低级别的机器.
你可以做的是使用Write-Error写入标准错误输出(stderr),如果程序调用你的脚本并捕获stderr输出,它就可以读取它.或者您可以将错误写入事件日志或日志文件.
但是,当你的进程运行时,任何写作都必须发生,因为在你的进程退出之后你就无法做任何事情.
| 归档时间: |
|
| 查看次数: |
2304 次 |
| 最近记录: |