輸出I嘗試以下方法:>的/ dev/null的2>&1仍具有在標準輸出
#!/bin/bash
var=$(< temp.temp) > /dev/null 2>&1
echo $var
我預期沒有輸出temp.temp是否存在。 但是當我嘗試這些命令時,它仍然有輸出。你能幫忙嗎?謝謝。
輸出I嘗試以下方法:>的/ dev/null的2>&1仍具有在標準輸出
#!/bin/bash
var=$(< temp.temp) > /dev/null 2>&1
echo $var
我預期沒有輸出temp.temp是否存在。 但是當我嘗試這些命令時,它仍然有輸出。你能幫忙嗎?謝謝。
使用方法如下:
{ var=$(<temp.temp); } 2>/dev/null
var=$(< temp.temp) > /dev/null 2>&1
應該
var=$(>/dev/null 2>&1 < temp.temp)
您分配一個變量的值,並重定向分配,這是沒有意義的輸出。
你需要的是第一重定向stdout
和stderr
,然後嘗試從文件中讀取,因爲它會從左至右解釋,也就是說,當你嘗試讀取temp.temp
,stdout
和stderr
還沒有被重定向,因此您會看到有關未找到文件或文件內容的消息。
你爲什麼不指望沒有輸出? – 2014-12-02 10:00:08