1. 程式人生 > >2>&1 &:將標準錯誤2重定向到標準輸出1中

2>&1 &:將標準錯誤2重定向到標準輸出1中

bash中 2>&1 & 的解釋

1、bash中0,1,2三個數字分別代表:

  • 0 STDIN_FILENO 標準輸入(一般是鍵盤)
  • 1 STDOUT_FILENO 標準輸出(一般是使用者終端控制檯)
  • 2 STDERR_FILENO 標準錯誤(出錯資訊輸出)

2、輸入輸出重定向,

  • 重定向輸入:在命令中指定具體的輸入來源,譬如 cat < test.c
  • 輸出重定向:指定具體的輸出目標以替換預設的標準輸出,譬如ls > 1.txt

3、> 和 >> 的區別:

  • > 用於新建
  • >> 用於追加

4、2>&1 就是用來將標準錯誤2重定向到標準輸出1中的

  • 1前面的&就是為了讓bash將1解釋成標準輸出而不是檔案1
  • 最後一個&,則是讓bash在後臺執行

參考
bash中 2>&1 & 的解釋