重定向與管道符
重定向
- 作用: 將命令的執行結果輸出到指定的文件中,而不是直接顯示在屏幕上
- 0 標準輸入 鍵盤 stdin 僅讀取
- 1 標準輸出 終端 stdout 僅寫入
- 2 標準錯誤 終端 stderr 僅寫入
- 3+ filename 其他文件 讀/寫
在Linux中構建了一個帶有編號標記的通道(文件米描述符)的進程來管理打開文件
通過進程連接到文件,進行文件數據的操作
- 重定向標準輸出
- 1>(1可省略)
- 將命令的執行結果輸出到指定文件中,而不是顯示在屏幕上,覆蓋寫
- history > history.txt
- find / -user ruochen > history.txt
- 1>>(1可省略)
- 標準輸出,追加寫
- ls >> history.txt
- 1>(1可省略)
- 重定向標準錯誤輸出
- 2>
- 將標準錯誤信息保存到指定文件中,進行覆蓋寫
- find / -user ruochen 2> error.txt
- 2>>
- 將標準錯誤信息保存到指定文件中,進行追加寫
- find / -user ruochen 2>> error.txt
- 2>
- find / -user ruochen > true.txt 2> false.txt
- 重定向標磚輸出和標準錯誤輸出
- &> 覆蓋寫
- &>> 追加寫
- 將標準輸出和標準錯誤全部保存到指定文件中
- find / -user ruochen &> a.txt
- find / -user ruochen &>> a.txt
find / -user ruochen >> true.txt 2> /dev/null
管道: 傳送
- 標識符號 |
- 就是將管道前面的輸出結果作爲後面語句的條件執行
- 格式
- 語句1 | 語句2 | … 語句n
- 案例
- ls -l /usr/bin | more
- ls | wc -l > /tmp/rootdir
- ls -t | head -n 10 > /tmp/rootdir
- find / -name root | find -size +10k | find -size +100k