
나는 실수로 많은 서버의 /etc/crontab에 라인을 배포했는데 이 라인에 오타가 있다는 것을 발견하여 모든 서버에서 이를 변경해야 합니다.
답변1
또 다른 옵션은 마지막 줄을 삭제하는 것보다 오타를 수정하는 것입니다.
sed -i '$ s/typotext/correcttext/ /var/spool/cron/user
최신 버전의 cron에서는 매우 미세한 변경 사항을 확인하므로 crontab 파일을 직접 편집할 수 있습니다.
답변2
sed가 내부 편집을 지원한다면,
sed -i '$d' file
그렇지 않은 경우 다음과 같은 복합 명령을 사용해야 합니다.
cat file | sed '$d' > newfile; mv newfile file
답변3
사용head
user@host$ cat <<EOF > test.txt
1
2
3
4
EOF
user@host$ head -n -1 test.txt | sponge test.txt
user@host$ cat test.txt
1
2
3
user@host$
답변4
답변은 unix.com의 포럼 기사를 참조하세요.
http://www.unix.com/shell-programming-scripting/25027-delete-last-line.html
sed -e '$d' 입력.파일 > 출력.파일
또는
헤드 -$(( wc -l file | awk '{print $1}'
- 1)) 파일