fstab의 마지막 줄이 줄바꿈으로 끝나지 않으면 어떻게 되나요?
마지막 줄이 줄바꿈으로 끝나지 않을 때 사람들이 경고를 받는 이유는 무엇입니까?
답변1
줄은 개행 문자로 끝나는 일련의 문자입니다. 파일의 마지막 개행 문자 뒤에 나타나는 문자는 해당 행의 일부가 아닙니다.
텍스트 파일의 POSIX 정의에 따르면 마지막 줄 바꿈 이후의 문자를 포함하는 파일은 텍스트 파일이 아니며 이 경우 텍스트 유틸리티의 동작은 지정되지 않으며 실제로 동작은 다릅니다.
- 일부는 이러한 문자를 완전히 무시합니다(종료되지 않는 줄 건너뛰기).
- 어떤 사람들은 그것을 한 줄로 간주하고 개행 문자가 없다는 점을 유지합니다(예: GNU
sed
) - 어떤 사람들은 그것이 줄이라고 생각하고 누락된 개행 문자를 다시 추가합니다(예: GNU
cut
) - 일부 유틸리티 동작이 변경되었습니다.
read
종료되지 않는 줄을 읽을 때 0이 아닌 종료 상태를 반환하는 것과 같습니다 .
mount
따라서 , swapon
, fsck
... 유틸리티(일반적으로 /etc/fstab을 읽는 유틸리티)가 종료되지 않는 줄을 이해 하더라도 파일을 처리하는 일부 스크립트는 여전히 실패할 수 있습니다. 텍스트 파일이 비어 있지 않은 한 항상 새 줄로 끝나는지 확인해야 합니다. 텍스트 편집기는 기본적으로 이 작업을 수행해야 합니다. 일반적으로 마지막 개행 문자를 제거하려면 몇 가지 어려움을 겪어야 합니다.