2012-11-18 115 views
37

我是shell腳本的新手,並且對如何使用sed或任何其他工具用字符串替換文本文件中的第一行感到困惑。下面是該文本文件的內容:用字符串替換文本文件中的第一行

 
/home/snehil/Desktop/j1/movie.MOV 
"spome other text lines' 

我想替換第一行(電影文件路徑)只有movie.MOV(可能是shell腳本變量)

請指導我如何做到這一點。我在一些帖子中遇到了sed,我需要在這裏使用sed嗎?

回答

73

sed的是合適的工具,嘗試做:

var="movie.MOV" 
sed -i "1s/.*/$var/" file.txt 

解釋

  • 1意味着第一線
  • 剩下的就是替代s///:我們代替一切(*)。由$var變量
+1

您也可以使用'1s:。*/::'去除除文件名外的所有內容,如果這是提問者實際需要的內容。 –

+1

嘗試這些解決方案...將恢復在一段時間..謝謝! – Rookie

+0

錯字更正。 –