Linux-(16)管道和重定向
生活随笔
收集整理的這篇文章主要介紹了
Linux-(16)管道和重定向
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? Linux的命令行為我們提供了管道和重定向機制,通過管道和重定向就可以完成多命令協作。
? 命令行shell的數據流有以下三種定義:
| 名稱 | 說明 | 編號 | 默認 |
| STDIN | 標準輸入 | 0 | 鍵盤 |
| STDOUT | 標準輸出 | 1 | 終端 |
| STDERR | 標準錯誤 | 2 | 終端 |
? 命令通過STDIN接收參數或數據,通過STDOUT輸出結果或通過STDERR輸出錯誤,通過管道和重定向可以控制CLI的數據流
? 如果將輸出重定向到/dev/null就不會有輸出了(這個通常用于在結果中過濾錯誤信息)
? 重定向:
? > ?將STDOUT重定向到文件(覆蓋),例:echo "xxx" > outfile
? >> ?將STDOUT重定向到文件(追加),例:echo "xxx" >> outfile
? 2> ?將STDERR重定向到文件(覆蓋),例:ls nothere 2> errout
? 2>&1 ?將STDERR與STDOUT結合,例:ls nothere 2>&1 alloutput
? < ?重定向STDIN, 例:grep xxx < /etc/passwd
? 管道:
? | (一個豎線):將一個命令的STDOUT(前一個命令)作為另一個命令(后一個命令)的STDIN,例:ls -l | grep xxx
? 管道通常用來組合不同的命令,以實現一個復雜的功能,重定向通常用來保存某命令的輸出信息或錯誤信息,可以用來記錄執行結果或保存錯誤信息到一個指定的文件。
總結
以上是生活随笔為你收集整理的Linux-(16)管道和重定向的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序分享功能开发及调试方法
- 下一篇: [:断开的管道]异常信息原因探究