![쉘 명령을 사용하여 ASCII 파일의 마지막 n 줄을 삭제하는 방법은 무엇입니까? [복사]](https://linux55.com/image/74488/%EC%89%98%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20ASCII%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EB%A7%88%EC%A7%80%EB%A7%89%20n%20%EC%A4%84%EC%9D%84%20%EC%82%AD%EC%A0%9C%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
n
쉘 명령을 사용하여 ASCII 파일의 마지막 몇 줄을 삭제하는 방법은 무엇입니까 ?
답변1
사용 head
(마지막 2줄 제거):
head -n -2 file
sed
/ 사용 tac
(마지막 2줄 제거):
tac file | sed "1,2d" | tac
tac
파일을 반전시켜 sed
( ) ~ (임의의 숫자일 수 있음) 줄을 제거합니다 d
.1
2
2
답변2
맨페이지 보기 head
- 여러 줄을 지정할 수 있으며 파일에 여러 줄이 표시됩니다.
head -10 filename
파일의 처음 10줄을 제공합니다. 파일의 길이를 모르는 경우 wc -l
를 사용하여 줄 수를 계산할 수 있습니다. 그런 다음 head
해당 번호를 인쇄하는 데 사용합니다 .
답변3
tac file| sed -i 'nd' | tac
tac
파일 반전, sed
라인 삭제 (d) n 라인