파일 내용을 변경하는 스크립트를 작성 중인데 출력 리디렉션 hosts
에서 멈췄습니다 .head
이렇게 하면 head -n -1 hosts >hosts
내 hosts
파일은 비어 있는 것으로 판명되며 예, 행이 1개 이상 있습니다.
답변1
이는 파일을 리디렉션할 때 쉘이 파일을 자르기 때문입니다. 이것은 머리가 읽을 기회를 갖기 전에 발생합니다.
임시 파일을 사용할 수 있습니다.
head -n1 hosts > hosts.tmp && mv hosts.tmp hosts
또는 sponge
moreutils 패키지를 사용하십시오.
head -n1 hosts | sponge hosts