2016-01-28 47 views
1

我正在使用ed將內容插入到特定行號的文件中。這是我的ed命令的代碼部分。如何從ed命令中刪除控制檯輸出?

ed servertest << END 
$LineNumber  #15i 
$Text   #this is text 
. 
w 
q 
END 

上述代碼工作正常,並將文本打印到指定行號的文件上。但是,每次運行代碼時,我都會在控制檯上獲取輸出。例如:

$ bash code.sh 
1456 
1534 

我認爲這些數字表示文件中的字符數,servertest。我意識到在運行代碼之前在未編輯的文件中有1456個字符,在運行代碼之後有1534個字符。 有沒有辦法在控制檯上顯示這些數字?我嘗試將輸出指向dev/null,但ed不允許在最後一個END命令之後的任何字符。

+2

是否'ED -s'做的伎倆? – dave

+0

@dave它!發佈它作爲答案,所以我可以接受它,謝謝:) –

+0

雖然'ed -s'是在這裏做的正確的事情,請注意,添加'>/dev/null 2>&1'通常會忽略兩個* stdout *和* stderr *。 –

回答

2

使用ED的無聲選項,即:

ed -s servertest << END 
... 
相關問題