PowerShell将错误编号转换为帮助信息


关键词

PowerShell将错误编号转换为帮助信息

摘要

PowerShell将错误编号转换为帮助信息

有时候,一些本地命令,比如net.exe,在执行过程中,会返回数字编号形式的错误信息。很郁闷的是,我们不知道这些数字代表什么意思。以前,我们可以使用如下的方式去获取数字代表的信息:

PS> net helpmsg 3534
The service did not report an error.

PowerShell将错误编号转换为帮助信息

有时候,一些本地命令,比如net.exe,在执行过程中,会返回数字编号形式的错误信息。很郁闷的是,我们不知道这些数字代表什么意思。以前,我们可以使用如下的方式去获取数字代表的信息:

PS> net helpmsg 3534
The service did not report an error.

PS> net helpmsg 1
Incorrect function.

PS> net helpmsg 4323
The transport cannot access the medium.

其实有一个更好的方法,那就是使用winrm.exe,它不仅可以实现上面的功能,而且还要更加强大!同样的,看看对上面三个错误的翻译:

PS> winrm helpmsg 3534
The service did not report an error.

PS> winrm helpmsg 1
Incorrect function.

PS> winrm helpmsg 4323
The transport cannot access the medium.

OK,看到了吧,结果是一样的。其实,net.exe只能翻译中一个特定规范内的错误信息(具体怎么样一个特定的规范,洪哥也不是很清楚),而winrm.exe则要更加强大,比如它可以转换“特定的远程”错误代码:

PS> winrm helpmsg 0x80338104
The WS-Management service cannot process the request. The WMI service returned an 'access denied' error.

PS> net helpmsg 0x80338104
The syntax of this command is:
NET HELPMSG
message#

上面可以看出来,winrm.exe正确的翻译出了0x80338104的错误信息,而net.exe没有做到。其实,这个命令可能跟PowerShell没有什么直接的关系,但也算是一个Shell命令吧,我们可以使用它去翻译任何低级的API错误代码,并且坚定的相信它得到的结果。

 

要饭二维码

洪哥写文章很苦逼,如果本文对您略有帮助,可以扫描下方二维码支持洪哥!金额随意,先行谢过!大家的支持是我前进的动力!

文章的版权

本文属于“洪哥笔记”原创文章,转载请注明来源地址:PowerShell将错误编号转换为帮助信息:http://www.splaybow.com/post/powershell-winrm.html

如果您在服务器运维、网络管理、网站或系统开发过程有需要提供收费服务,请加QQ:8771947!十年运维经验,帮您省钱、让您放心!
亲,如果有需要,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D

« PowerShell添加修改任务计划 PowerShell反转字符串 »