2016-01-29 46 views
1

當我運行此命令:'>>'在PowerShell中做什麼?

Get-Content generated\no_animate.css >> generated\all.css 

它複製第一文件內容到第二個文件。 >>符號的官方術語是什麼,我可以在哪裏找到關於這個和其他的更多信息?

不出所料,在Google搜索>>並不是非常有用的信息。

+3

在PowerShell提示符類型:***獲取幫助about_Redirection *** – EBGreen

+0

感謝,我試過命令,並且它失敗了:Get-Help:Get-Help在這個會話的幫助文件中找不到about_Redirection。要下載更新的幫助 主題,請鍵入:「更新 - 幫助」。要獲得在線幫助,請在TechNet庫中搜索幫助主題 http://go.microsoft.com/fwlink/?LinkID = 107116.'嘗試更新並由於我的公司代理失敗後,我發現通過搜索'about_Redirection'找到MSDN上的信息。 – 4imble

+0

您使用的是什麼版本的PowerShell? – EBGreen

回答

1

感謝EBGreen,我找到了這些信息。

https://technet.microsoft.com/en-us/library/hh847746.aspx

主題 about_Redirection

簡短說明 說明如何輸出的Windows PowerShell重定向到文本文件。

詳細描述 默認情況下,Windows PowerShell將其命令輸出發送到Windows PowerShell控制檯。但是,您可以將輸出指向文本 文件,並且可以將錯誤輸出重定向到常規輸出流。

You can use the following methods to redirect output: 

    - Use the Out-File cmdlet, which sends command output to a text file. 
     Typically, you use the Out-File cmdlet when you need to use its 
     parameters, such as the Encoding, Force, Width, or NoClobber 
     parameters. 

    - Use the Tee-Object cmdlet, which sends command output to a text file 
     and then sends it to the pipeline. 

    - Use the Windows PowerShell redirection operators. 

的Windows PowerShell重定向操作符 重定向操作符讓你發送特定類型的輸出 的文件和文件到成功輸出流。

The Windows PowerShell redirection operators use the following characters 
    to represent each output type: 
    * All output 
    1 Success output 
    2 Errors 
    3 Warning messages 
    4 Verbose output 
    5 Debug messages 

      NOTE: The All (*), Warning (3), Verbose (4) and Debug (5) redirection operators were introduced 
         in Windows PowerShell 3.0. They do not work in earlier versions of Windows PowerShell. 

    The Windows PowerShell redirection operators are as follows. 
    Operator Description    Example 
    -------- ----------------------  ------------------------------ 
    >   Sends output to the  Get-Process > Process.txt 
      specified file. 

    >>  Appends the output to  dir *.ps1 >> Scripts.txt 
      the contents of the 
      specified file. 

    2>  Sends errors to the  Get-Process none 2> Errors.txt 
      specified file. 

    2>>  Appends errors to   Get-Process none 2>> Save-Errors.txt 
      the contents of the 
      specified file. 

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

    3>  Sends warnings to the  Write-Warning "Test!" 3> Warnings.txt 
      specified file. 

    3>>  Appends warnings to  Write-Warning "Test!" 3>> Save-Warnings.txt 
      the contents of the 
      specified file. 

    3>&1  Sends warnings (3) and  function Test-Warning 
      success output (1)   { Get-Process PowerShell; 
      to the success    Write-Warning "Test!" } 
      output stream.    Test-Warning 3>&1 

    4>  Sends verbose output to Import-Module * -Verbose 4> Verbose.txt 
      the specified file. 

    4>>  Appends verbose output  Import-Module * -Verbose 4>> Save-Verbose.txt 
      to the contents of the 
      specified file. 

    4>&1  Sends verbose output (4) Import-Module * -Verbose 4>&1 
      and success output (1)  
      to the success output 
      stream.    

    5>  Sends debug messages to Write-Debug "Starting" 5> Debug.txt 
      the specified file. 

    5>>  Appends debug messages  Write-Debug "Saving" 5>> Save-Debug.txt 
      to the contents of the 
      specified file. 

    5>&1  Sends debug messages (5) function Test-Debug 
      and success output (1)  { Get-Process PowerShell 
      to the success output  Write-Debug "PS" } 
      stream.     Test-Debug 5>&1 

    *>  Sends all output types  function Test-Output 
      to the specified file.  { Get-Process PowerShell, none 
             Write-Warning "Test!" 
    *>>  Appends all output types  Write-Verbose "Test Verbose" 
      to the contents of the  Write-Debug "Test Debug" } 
      specified file.    
             Test-Output *> Test-Output.txt 
    *>&1  Sends all output types  Test-Output *>> Test-Output.txt 
      (*) to the success output Test-Output *>&1  
      stream.  


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. 


To force the redirection of content to a read-only, hidden, or system file, 
use the Out-File cmdlet with its Force parameter. When you are writing to 
files, the redirection operators use Unicode encoding. If the file has a 
different encoding, the output might not be formatted correctly. To 
redirect content to non-Unicode files, use the Out-File cmdlet with its 
Encoding parameter. 

另請參閱 出文件 三通對象 about_Operators about_Command_Syntax about_Path_Syntax

+0

使用'>>'附加到文件在很多(大多數?)shell中很常見。它也可以在[Windows命令提示符](https://technet.microsoft.com/en-us/library/bb490982.aspx)以及bash和其他unix shell中運行。 – briantist

+0

很高興知道,我一定會牢記這一點。 – 4imble