32

我有以下脚本:

if( $timeout -ne $null )
{
    & $var$timeout 2>&1 > $logDir\$logName
}
else
{
    & $var2>&1 >  $logDir\$logName
}

我很好奇是什么2>&1;或者,它代表什么。我不知道它叫什么,否则我会查一下。

4

2 回答 2

34

它将标准错误(2)重定向到与标准输出(1)相同的位置

于 2013-07-29T18:53:01.083 回答
30

文档是您的朋友。从PS> man about_Redirection

The Windows PowerShell redirection operators are as follows.

Operator  Description                Example
--------  ----------------------     ------------------------------
<snip>

2>&1      Sends errors (2) and       Get-Process none, Powershell 2>&1
          success output (1)
          to the success
          output stream.

<snip>

The syntax of the redirection operators is as follows:

   <input> <operator> [<path>\]<file>

If the specified file already exists, the redirection operators that do not
append data (> and n>) overwrite the current contents of the file without
warning. However, if the file is a read-only, hidden, or system file, the
redirection fails. The append redirection operators (>> and n>>) do not
write to a read-only file, but they append content to a system or hidden
file.
于 2013-07-29T18:57:19.323 回答