ZIP 파일이 있는데 파일이 포함되어 있으며 파일 이름이 일부 인코딩되어 있습니다. 해당 파일 이름의 인코딩을 알고 있지만 파일 이름을 올바르게 압축 해제하는 방법을 여전히 모른다고 가정 해 봅시다.
여기에 예제 파일 이 있습니다. "【SSK 字幕 组】 뱀파이어 다이어리 吸血鬼 日记 S06E12.ass"파일이 하나 있습니다.
사용한 인코딩이 GB18030 (중국어)이라는 것을 알고 있습니다.
질문은-적절한 인코딩 된 파일 이름을 얻기 위해 unzip 또는 다른 CLI 유틸리티를 사용하여 FreeBSD에서 해당 파일의 압축을 푸는 방법은 무엇입니까? 나는 가능한 모든 것을 시도했지만 결과는 좋지 않았다. 도와주세요.
OSX에서 시도했습니다.
MBP1:test 2ge$ bsdtar xf gb18030.zip
MBP1:test 2ge$ ls
%A1%BESSK%D7%D6Ļ%D7顿The Vampire Diaries %CE%FCѪ%B9%ED%C8ռ%C7S06E12/ gb18030.zip
MBP1:test 2ge$ cd %A1%BESSK%D7%D6Ļ%D7顿The\ Vampire\ Diaries\ %CE%FCѪ%B9%ED%C8ռ%C7S06E12/
MBP1:%A1%BESSK%D7%D6Ļ%D7顿The Vampire Diaries %CE%FCѪ%B9%ED%C8ռ%C7S06E12 2ge$ ls
%A1%BESSK%D7%D6Ļ%D7顿The Vampire Diaries %CE%FCѪ%B9%ED%C8ռ%C7S06E12.ass*
MBP1:%A1%BESSK%D7%D6Ļ%D7顿The Vampire Diaries %CE%FCѪ%B9%ED%C8ռ%C7S06E12 2ge$ find . | iconv -f gb18030 -t utf-8
.
./%A1%BESSK%D7%D6L抬%D7椤縏he Vampire Diaries %CE%FC血%B9%ED%C8占%C7S06E12.ass
MBP1:%A1%BESSK%D7%D6Ļ%D7顿The Vampire Diaries %CE%FCѪ%B9%ED%C8ռ%C7S06E12 2ge$ convmv -r -f gb18030 -t utf-8 --notest .
Skipping, already UTF-8: ./%A1%BESSK%D7%D6Ļ%D7顿The Vampire Diaries %CE%FCѪ%B9%ED%C8ռ%C7S06E12.ass
Ready!
압축 풀기를 사용하여 비슷한 것을 시도했지만 비슷한 문제가 발생합니다.
고맙습니다. 이제 OSX (터미널)의 SSH를 사용하여 연결하는 FREE BSD를 사용해보십시오.
# locale
LANG=
LC_CTYPE="C"
LC_COLLATE="C"
LC_TIME="C"
LC_NUMERIC="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=C
먼저 중국 이름을 올바르게 표시하고 싶습니다. 나는 바꿨다
setenv LC_ALL zh_CN.GB18030
setenv LANG zh_CN.GB18030
그런 다음 파일을 다운로드 하고 "ls"를 시도하여 올바른 문자를 보지만 운이 좋지 않습니다. 따라서 적절한 결과를 얻을 수 있는지 확인하기 위해 첫 번째 중국어 로캘을 해결해야한다고 생각합니다. 실제로 비교할 수 있습니다. 이걸로 도와주세요.