半肾
精华
|
战斗力 鹅
|
回帖 0
注册时间 2019-3-19
|
本帖最后由 yikaa 于 2021-3-21 23:59 编辑
写了个小程序,然后突发奇想准备用 Powershell 脚本来测试的,结果没想到遇到了微软式的 Feature。
正常运行后出现了这样的字符:
- + CategoryInfo : NotSpecified: (2021/03/21 23:4.../localhost:8003:String) [], RemoteException
- + FullyQualifiedErrorId : NativeCommandError
- + PSComputerName : localhost
复制代码
但是程序测试是正常的,这就让我摸不着头脑了。哪里来的报错呢?
于是一通搜索之后才发现这是微软式的 It`s a feature not a bug 。简单地说就是当 stderr 被写入的时候 微软就认为你是报错了, 所以就用这样的字符来进行错误提示。
但是实际上写入 stderr 的不一定是错误信息,还可能是 log 这类的日志信息。如果你需要正常地显示 log 的话,你得在程序里面把 log 重定向到 stdout。如果只是在 Powershell 里面重定向的话
会把你的 log 也搞掉。。。这就有点让人蛋疼了。为了你 Powershell 我还得改代码??
最后还是吐槽一句,让微软的归微软,让 Linux 的归 Linux 。写脚本我还是用 bash 吧。
|
|