파일이 있고 명령줄에서 파일 끝에 텍스트를 표시해야 합니다. 문제는 데이터가 모두 중괄호 안에 있는 섹션에 있다는 것입니다.
파일의 끝은 다음과 같습니다.
text-string1,text-string2,text-string3;
}
text-string3 뒤에 텍스트를 삽입할 수 있어야 하지만 여전히 세미콜론과 중괄호 안에 유지해야 합니다. 이와 같이:
text-string1,text-string2,text-string3,new-text-string;
}
명령줄에서 이를 수행하는 가장 좋은 방법은 무엇입니까?
답변1
Single 을 사용하여 수행할 수 있지만 sed
단순화를 위해 다음을 사용하겠습니다 tac
.
tac file | sed '2s/;$/new-text-string;/' | tac
답변2
sed -i 's/;$/,new-text-string;/' filename
";"의 마지막 항목을 찾아 그 앞에 새 데이터를 추가합니다. -i 명령줄에서 파일을 내부적으로 변경합니다.