[unix] 파일에 UTF-8 텍스트의 BOM이 있는지 확인하는 방법

utf-8 텍스트 파일에 명령 줄의 BOM이 있는지 어떻게 확인할 수 있습니까?

file명령이 표시 UTF-8 Unicode text됩니다.

그러나 파일에 BOM이 없음을 의미합니다.

을 사용하고 Ubuntu 12.04있습니다.



답변

fileBOM이 있는지 알려줍니다. 다음을 테스트 할 수 있습니다.

$ /usr/bin/printf "\ufeff...\n" | file -
/dev/stdin: UTF-8 Unicode (with BOM) text

참고 : file변경 로그 에 따르면 이 기능은 2007 년에 이미 존재했습니다. 따라서 현재 시스템에서 작동합니다.


답변

당신이 stat fileName그것을 실행 하면 정확히 세 문자를 제공해야합니다. 편집기에서 파일을 열었을 때 아무것도 볼 수 없었습니다. 따라서 파일 크기가 3이라는 것을 알면 BOM이 있다는 것이 명확 해졌습니다.

또한, 여기 의 게시물 은 내 경우에 유익했습니다.

hexdump -n 3 -C 2.txt
00000000 ef bb bf
ef bb bf // YES


답변