2012-11-18 4 views
37

쉘 스크립트에서 초보자이며 sed 또는 다른 도구를 사용하여 텍스트 파일의 첫 줄을 문자열로 바꾸는 방법에 대해 혼란 스럽습니다. 다음은 텍스트 파일의 내용은 다음과 같습니다텍스트 파일의 첫 번째 줄을 문자열로 대체하십시오.

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

나는 (쉘 스크립트의 변수가 될 수있다)

방법이 작업을 수행하는 나를 인도 해주십시오 단지 movie.MOV와 첫 번째 라인 (동영상 파일 경로를) 대체 할 . 일부 게시물에서 sed을 발견했습니다. 여기 sed을 사용해야합니까? 나오지도

답변

73

적합한 도구입니다, 일을 시도 :

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

설명은

  • 1 첫 번째 줄에 나머지는 대체 s///입니다
  • 의미 : 우리가 모든 것을 대체 (*.) $var 변수에 의해
+1

asker가 실제로 원하는 것이라면'1s :. */::'를 사용하여 파일 이름 이외의 모든 것을 제거 할 수 있습니다. –

+1

이러한 솔루션을 시도하면 ... 잠시 후에 되돌아갑니다. 감사합니다! – Rookie

+0

오타가 수정되었습니다. –

관련 문제