바이너리 형식의 텍스트 파일 변환 취소


0

나는 27 문자 영숫자 해시 줄로 구성된다는 것을 압니다. 상당히 큰 CSV 파일 (~ 700MB)이 있습니다. 쉼표 또는 아무것도 공상. 어쨌든, Windows에서 Linux로 (winSCP를 통해 그리고 몇 개의 정규 SCP를 통해) 마이그레이션하는 동안, 그것은 익숙하지 않은 어떤 종류의 바이너리 형식으로 변환되었습니다.

vi로 파일을 열면 모든 것이 잘 보입니다. 줄 끝의 문제가 아니지만 (dos2unix가 도움이되지 않습니다.) 하단에 [변환]이라고 표시되어 있습니다. 파일을 'head'하면, 첫 번째 줄의 시작 부분에 "ÿþ"를 제외하고 적절하게 보입니다. 그러나 nano로 파일을 열면 처음에는 "ÿþ", 모든 문자 (개행과 EoF조차) 앞에 "^ @"가 표시됩니다.

파일을 다시 저장하거나 복사하려고하면 (예 : head file.csv & gt; short.txt) 특수 인코딩이 유지됩니다. 내 SSH 클라이언트를 통해 내 Windows 클립 보드에 vi (제대로 표시)의 처음 10 줄을 복사 한 다음 새 텍스트 파일 인 test.txt에 붙여 넣었습니다. 이 파일은 파일 크기의 약 절반이지만 vi에서 열 때 시각적으로 동일합니다 ( 'head', 'ÿþ'빼기). 또한,

file test.txt
test.txt: ASCII text
file short.txt
short.txt:

이 형식의 텍스트 파일이 어떤 형식으로 변환되었는지는 잘 모르지만 (기호를 찾기 위해 인터넷을 검색하는 것은 악명 높다) 확실하게 다시 변환 할 수있는 방법이 있어야합니다. 어떤 아이디어?


게시하는 데 도움이 될 수 있습니다. short.txt 어딘가에 온라인으로 연결하여 작업 할 수있는 샘플이 있습니다. 그것은 일종의 텍스트 인코딩 변경 (ASCII에서 UCS-2까지의 야생 추측)처럼 들리지만 약간의 데이터를 보지 않고는 확실히 말할 수는 없습니다.
David Z

답변:


2

"ÿþ"는 유니 코드 BOM (Byte Order Mark)이 될 수 있고 ^ @는 각 16 비트 유니 코드 문자의 첫 번째 바이트가 될 수 있습니다.

recode 또는 iconv를 사용하여 UTF-16에서 ASCII로 변환하십시오.


감사합니다 10 억! short.txt로 트릭을 만들었지 만 전체 크기의 데이터 세트에서 조금 시간이 걸릴 것으로 생각됩니다.
Hammer Bro.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.