마지막 줄 앞 줄에 텍스트를 추가/연결하고 싶습니다. 따라서 내 원본 파일이 다음과 같은 경우:
1 sometext
2 sometext
3 sometext
4 sometext
5 sometext
내 새 파일은
1 sometext
2 sometext
3 sometext
4 sometext newtext
5 sometext
삽입하는 방법을 이미 알고 있습니다.개행 문자그러나 이것은 약간 다른 문제입니다. 새 줄을 삽입하는 것이 아니라 텍스트를 연결하고 싶기 때문입니다.
답변1
파일을 한 줄씩 뒤집고 두 번째 줄에 텍스트를 추가한 다음 파일을 다시 뒤집습니다.
tac file | sed '2s/$/ newtext/' | tac
답변2
정력다음과 같은 주소를 이해하십시오 $-1
.
ex -sc '$-1s/$/ newtext/' +wq file
ex
그것은 같은vim -e
답변3
$ awk 'NR>1{printf "%s%s", ors, prev; ors=ORS} {prev=$0} END{print OFS "newtext" ORS prev}' file
1 sometext
2 sometext
3 sometext
4 sometext newtext
5 sometext
답변4
줄을 세고 산술적으로 주소를 얻으세요:
sed "$(wc -l infile | awk '{print $1-1}')s/$/ newtext/" infile