一、說明
標準輸入0 :從鍵盤獲得輸入
標準輸出1 :輸出到屏幕
錯誤輸出2 :輸出到屏幕
二、廢話少說,看例子
[root@localhost ~]# echo -e "\n" | telnet 127.0.0.1 80
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Connection closed by foreign host.
這個例子裏面,標準輸入1:(前三行)
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
這個例子裏面,錯誤輸出2:(最後一行)
Connection closed by foreign host.
三、把標準輸出導入到空洞“/dev/null”,把錯誤輸出輸出到屏幕,幾種方法:
方法一:
[root@localhost ~]# echo -e "\n" | telnet 127.0.0.1 80 > /dev/null
Connection closed by foreign host.
方法二:
[root@localhost ~]# echo -e "\n" | telnet 127.0.0.1 80 2>&1 >/dev/null
Connection closed by foreign host.
四、把錯誤輸出導入到空洞“/dev/null”,把標準輸出輸出到屏幕,幾種方法:
只有一種:
[root@localhost ~]# echo -e "\n" | telnet 127.0.0.1 80 2> /dev/null
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
五、把不管是標準輸出還是錯誤輸出都都導入到空洞“/dev/null”,幾種方法:
方法一:
[root@localhost ~]# echo -e "\n" | telnet 127.0.0.1 80 > /dev/null 2>&1
方法二:
[root@localhost ~]# echo -e "\n" | telnet 127.0.0.1 80 &> /dev/null
六、建議
幾種方法都用的話,會亂,大家一定要有自己的一套方式,本博主的方式如下:
只把標準輸出導入到/dev/null(即:屏幕上只顯示錯誤輸出):
> /dev/null只把錯誤輸出導入到/dev/null(即:屏幕上只顯示標準輸出):
2> /dev/null不管錯誤還是標準全導走(即:屏幕上不顯示任何輸出):
&> /dev/null總結:“不想看到誰,就在“>”前面加上誰”