1. 程式人生 > >linux標準輸入輸出錯誤輸出

linux標準輸入輸出錯誤輸出

Linux Shell 環境中支援輸入輸出重定向,用符號"<"和">"來表示。0、1和2分別表示標準輸入、標準輸出和標準錯誤資訊輸出,可以用來指定需要重定向的標準輸入或輸出,比如 2>a.txt 表示將錯誤資訊輸出到檔案a.txt中。 同時,還可以在這三個標準輸入輸出之間實現重定向,比如將錯誤資訊重定向到標準輸出,可以用 2>&1來實現。 Linux下還有一個非凡的檔案/dev/null,它就像一個無底洞,所有重定向到它的資訊都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程式的所有資訊時,就可以將輸出重定向到/dev/null。 假如想要正常輸出和錯誤資訊都不顯示,則要把標準輸出和標準錯誤都重定向到/dev/null, 例如: # ls 1>/dev/null 2>/dev/null 還有一種做法是將錯誤重定向到標準輸出,然後再重定向到 /dev/null,例如: # ls >/dev/null 2>&1 注重:此處的順序不能更改,否則達不到想要的效果,此時先將標準輸出重定向到 /dev/null,然後將標準錯誤重定向到標準輸出,由於標準輸出已經重定向到了/dev/null,因此標準錯誤也會重定向到/dev/null,於是一切靜靜靜:-) 另外 : make >& make_log 意思是把標準輸出和錯誤輸出都重定向, make>out 只重定向標準輸出!!!!! >log 表示把標準輸出重新定向到檔案log中 >& log 表示把標準輸出和錯誤輸出都定向到檔案log中,相當於 >log 2>&1

相關推薦

Linux:標準輸入輸出錯誤

1、檔案描述符檔案檔案描述符 輸入檔案0輸出檔案1錯誤輸出檔案22、將標準輸出和錯誤輸出重定向到同一個檔案:2>&1[email protected]:~/mybash$ cat test.sh #/usr/bin/bashname=kevinecho $nameipconfig[em

linux標準輸入輸出錯誤輸出

Linux Shell 環境中支援輸入輸出重定向,用符號"<"和">"來表示。0、1和2分別表示標準輸入、標準輸出和標準錯誤資訊輸出,可以用來指定需要重定向的標準輸入或輸出,比如 2>a.txt 表示將錯誤資訊輸出到檔案a.txt中。 同時,還可以在這三

linux標準輸入輸出

超過 理論 -- happy cal ant 參數 結構體類型 ads 一 簡介 sdtin, stdout, stderr分別稱為標準輸入,標準輸出,標準錯誤輸出, 它們的聲明如下: /* Standard streams. */extern FILE *stdin

linux系統shell中重定向 標準輸出 錯誤輸出 >/dev/null 2>&1

經常shell指令碼中,會看到: 仔細體會下面例子。 >/dev/null  2>&1 這句話的意思簡單理解為:標準輸出和錯誤輸出都不會輸出出來。 [email protected]:/tmp>date>1.txt >/de

linux標準輸入流,標準輸出流 stdin stdout大概是什麼個概念

在linux中把所有東西都看作是檔案來處理,比如印表機,比如網絡卡,比如音效卡等等 stdin也是一個檔案 stdout 也是一個檔案 每當啟動一個程序的時候,都會有一個預設的stdin和stdout生成, 預設情況下,stdin就是鍵盤 預設情況下,

Linux 標準 輸入 輸出 重定向. printf 不輸出到螢幕的解決辦法

方法1: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <sys/stat.h> #include <fcntl.h&g

標準輸入流和輸出流分別是啥,高效字符流的方法

數組 readline write link 針對 span 輸入 控制 system 標準輸入流的書System.in,默認是指向鍵盤的,可以接受用戶鍵盤錄入的數據 標準輸出流是System.out,默認指向控制臺,可以將結果打印到控制臺. 高效字符流: readLine

【Shell】標準輸入 read 和輸出 echo

文章目錄 一、標準輸入 read 二、標準輸出 echo 說明: 一、標準輸入 read shell 中通過 read 語句從鍵盤或檔案的某一行文字中讀入資訊,並將內容賦給變數,多個變數之間用

C/C++對檔案以及標準輸入(stdin)、輸出(stdout)操作的格式設定

背景:在編寫一個軟體與Chrome中外掛進行通訊,由Chrome中的外掛自動抓捕到網頁資訊,從而呼叫C++編寫的程式,之間通過標準的輸入輸出進行通訊(資料格式為json檔案)。Chrome中抓捕資訊的特點是前4個位元組作為整個後段內容資料的長度,因此在傳送資料到Chrome時

linux重定向標準輸入輸出,標準錯誤

lin linux重定向 文件描述符 name txt 文件 sets color 描述符 標準輸入是文件描述符0。它是命令的輸入,缺省是鍵盤,也可以是文件或其他命令的輸出。標準輸出是文件描述符1。它是命令的輸出,缺省是屏幕,也可以是文件。標準錯誤是文件描述符2。這是命令錯

linux學習第一周;標準輸入輸出錯誤重定向與管道

例子 OS clas 管道 text 默認 post 錯誤 gpo 標準輸入 標準輸出 標準錯誤 重定向: < #標準輸入重定向,默認為鍵盤輸入,利用<可以將文件代替鍵盤輸入 > #標準輸出重定向(會覆蓋1.text裏面的內容);例子:ls > /d

linux隨筆(一) | 標準輸入輸出錯誤

在工作開始初期,我曾經為了“ >/dev/null  2>&1 ”這一種糾結。今日又看到這種命令字尾,感觸良多。如果你也有這種困惑,不妨來看看這篇小文章。 在lunix中,有三種標準流:標準輸入流、標準輸出流、標準錯誤流。為了區分這三種流,linux分別

Linux重定向及標準輸入輸出錯誤相關

 通常情況,每個 Unix 程式在啟動時都會開啟三個流,一個用於輸入,一個用於輸出,一個用於列印診斷或錯誤訊息。它們分別被做:標準輸入,標準輸出,標準錯誤。 標準輸入是程式可以讀取其輸入的位置

linux 關於標準輸入輸出錯誤 STDIN STDOUT STDEER

入門: stdout, stdin, stderr的中文名字分別是標準輸出,標準輸入和標準錯誤。 在Linux下,當一個使用者程序被建立的時候,系統會自動為該程序建立三個資料流,也就是題目中所提到的這三個。那麼什麼是資料流呢(stream)?我們知道,一個程式要執行,

Linux shell的標準輸入輸出錯誤

1.檔案描述符 在linux shell執行命令時,每個程序都和三個開啟的檔案相聯絡,並使用檔案描述符來引用這些檔案。由於檔案描述符不容易記憶,shell同時也給出了相應的檔名: 檔案 檔案描述符 輸入檔案—標準輸入 0(預設是鍵盤,為0時是檔案或者其他命令的輸出) 輸出檔

linux C 列印錯誤資訊和標準輸入輸出

Linux 使用strerror 和 perror 函式來列印響應的錯誤資訊 ,這兩個函式的標準呼叫格式說明如下: #include<string.h> char *strerror(int errnum) #include<stdio.

關於標準輸入標準輸出標準錯誤

-a 內容 program 道理 printf 註意 自己 stack 開標 1. 為什麽我們程序直接使用printf或者write(0,...)就可以輸出內容,而不需要首先調用open,是因為我們的進程是shell的子進程,它直接從shell繼承了文件描述符。 2.假如需

Linux c學習--從標準輸入輸出看流和緩沖區

pty 出錯 流的概念 code check 抽象 輸出信息 指針 架構 學習標準輸入輸出,我們都會遇到一個概念,流和緩沖區,但到底什麽是流,什麽是緩沖區呢? 書《C Primer Plus》上說,C程序處理一個流而不是直接處理文件。後面的解釋十分抽象:『流(s

0082-【Linux-Shell】-標準輸入標準輸出

標準輸入 標準輸出 標準錯誤 command > filename 把把標準輸出重定向到一個新檔案中 command >> filename 把把標準輸出重定向到一個檔案中(追加)

Linux中的標準輸入輸出

[轉載] 標準輸入0    從鍵盤獲得輸入 /proc/self/fd/0  標準輸出1    輸出到螢幕(即控制檯) /proc/self/fd/1  錯誤輸出2    輸出到螢幕(即控制檯) /proc/self/fd/2  /dev/null代表linux的空裝置檔