當我們使用linux的時候,每下達1個命令,通常都會有對應的資訊輸出在螢幕上,這些輸出的資料就是資料流,而linux資料流重導向,就是把這些資料輸出到不同的地方了。
而資料流通常分為正確的資料跟錯誤的資料,如果我們要把正確的資料導向到我們要的檔案裡面去,可以使(覆蓋)>(新增)來處理。
[malt@malt ~]$ ls -ll
total 4
-rw-r--r--. 1 root root 53
apr1310:
44 welcome.txt
[malt@malt ~]$ ls -ll > output //重點
[malt@malt ~]$ cat output
total 4
-rw-rw-r--. 1 malt malt 0
apr2510:
36 output
-rw-r--r--. 1 root root 53
apr1310:
44 welcome.txt
上面我們就把ls -ll這個命令的輸出輸出到了output裡面了,那如果要輸出錯誤的資料流,我們就可以使用2>(覆蓋)和2>>(新增)來處理。具體的使用就跟》和》一樣。
如果想把正確的資料流跟錯誤的資料流同時輸出到1個檔案上,寫法就是
[malt@malt ~]$ ls -l ../http ../malt &> ls_out //重點
既然有輸出,自然有輸入,而輸入的時候我們就是使用《進行輸入資料流,現在我想把.bashrc裡面的問題匯入到output這個檔案中,除了使用cp複製外,我們還可以使用cat 搭配 匯入跟匯出來完成
[malt@malt ~]$ cat > output <.bashrc>
[malt@malt ~]$ ls -ll output .bashrc
-rw-r--r--. 1 malt malt 231
aug3
2016 .bashrc
-rw-rw-r--. 1 malt malt 231
apr2510:
52 output
Linux之資料流重導向
其實一開始繞進檔案描述符這個大坑裡去了,越挖越深,什麼系統檔案表,記憶體索引節點,vfs等等都一下子冒了出來,而我暫時還沒那麼多精力搞定所有,於是只能遮蔽底層的一些細節,暫且當作黑盒子,來日再挖。1 linux系統中,一切資源都被視為檔案,包括放在磁碟上的各種文件,甚至各種裝置。檔案是linux組織...
Linux下資料流重導向
定義 指根據命令的輸出不列印在螢幕上而是直接輸入到其他裝置比如檔案或印表機或垃圾箱 格式 命令 command option 引數 1 2 2 檔案或列印裝置 1.標準輸入 stdin 為 0 使用 或 2.標準輸出 stdout 為 1 使用 或 3.標準錯誤輸出 stderr 為 2 使用 2 ...
BASH 資料流重導向
資料流重導向 即將本應在標準輸入輸出 std input output error output 的資料傳到別的地方去。例如將除錯資訊存入文件中,而非直接輸出到螢幕上。也可以用 tee 命令,即輸出到標準輸出,又寫入指定文件 也叫雙向導向。傳送字元如下所示 1.標準輸入 stdin 為0,使用 或 ...