错误重定向在PowerShell中不起作用

Sur*_*rya 3 powershell redirect

当我在powershell中输入'4abd'时,它给出了以下输出.

4abd:术语"4abd"未被识别为cmdlet,函数,脚本文件或可操作程序的名称.检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试.在行:1 char:1 + 4abd + ~~~~ + CategoryInfo:ObjectNotFound:(4abd:String)[],CommandNotFoundException + FullyQualifiedErrorId:CommandNotFoundException

我想将此错误重定向到文件.我尝试了以下所有方法:

4abd 2>&1>>"D:\\xyz.txt"
4abd 2>&1 >> D:\\xyz.txt
4abd 2>&1 >> xyz.txt
4abd 2>&1 >> "xyz.txt"
4abd 2>"D:\\xyz.txt"
4abd 2>D:\\xyz.txt
Run Code Online (Sandbox Code Playgroud)

但没有任何结果.请帮我解决这个问题.

The*_*ian 5

你可以Invoke-Expression用来完成这个.2>&1不适合你的原因是因为命令没有生成错误,PowerShell是.因此,为PowerShell提供一个知道如何使用的cmdlet,如果该cmdlet生成错误,则可以重定向它.

. { Invoke-Expression "4abd" } 2>&1 | Set-Content xyz.txt
Run Code Online (Sandbox Code Playgroud)

  • [包装](/sf/ask/3396827661/#48526263) (2认同)