Linux에서 파일이 깨졌을 경우 어떻게 해야 하나요?
Linux에서 파일을 작동할 때 잘못된 문자가 자주 발생합니다. 저는 모든 사람에게 도움이 되기를 바라면서 인터넷에서 몇 가지 해결책을 검색했습니다.
Linux에서 Windows에서 파일을 작동해야 하는 경우 파일 인코딩 변환 문제가 자주 발생할 수 있습니다. Windows의 기본 파일 형식은 GBK(gb2312)이고 Linux는 일반적으로 UTF-8입니다.
다음은 Linux에서 파일의 인코딩을 확인하는 방법과 파일을 변환하는 방법을 소개합니다.
추천: "Linux Tutorial"
파일 인코딩 보기
다음과 같은 방법으로 Linux에서 파일 인코딩을 볼 수 있습니다:
1 Vim에서 파일 인코딩을 직접 볼 수 있습니다
:set fileencoding
즉, 파일 인코딩 형식을 표시할 수 있습니다.
파일을 다른 인코딩 형식으로 보거나 Vim을 사용하여 잘못된 파일을 보는 문제를 해결하고 싶다면
~/.vimrc 파일에 다음 내용을 추가할 수 있습니다:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
이 방법으로 , vim은 이를 자동으로 인식할 수 있습니다. 파일 인코딩(UTF-8 또는 GBK로 인코딩된 파일을 자동으로 식별할 수 있음)은 실제로 fileencodings에서 제공하는 인코딩 목록에 따라 시도 중입니다. 적합한 인코딩이 없으면 latin-1(ASCII) 인코딩으로 엽니다. .
파일 인코딩 변환
1. 파일을 utf-8 형식으로 변환하는 등 Vim에서 직접 파일 인코딩을 변환합니다.
:set fileencoding=utf-8
iconv 변환, iconv 명령 형식은 다음과 같습니다. :
iconv -f 인코딩 -t 인코딩 입력 파일
예를 들어 UTF-8 인코딩 파일을 GBK 인코딩으로 변환
iconv -f GBK -t UTF-8 file1 -o file2
iconv -f gbk -t utf8 linux Common Commands.txt > Common Linux Commands.txt.utf8
파일 이름 인코딩 변환:
Linux에서 Windows로 파일을 복사하거나 Windows에서 Linux로 파일을 복사하는 경우 중국어 파일 이름이 왜곡되는 경우가 있습니다. 이 문제가 발생하는 이유는 Windows의 파일 이름 기본 인코딩이 GBK인 반면 Linux의 기본 파일 이름 인코딩은 UTF8이기 때문입니다. 인코딩이 일치하지 않아 파일 이름이 깨집니다. 이 문제를 해결하려면 파일 이름이 깨져야 합니다. .
Linux에서는 파일 이름 인코딩을 변환하기 위해 특별히 제공되는 도구인 convmv를 사용하면 파일 이름을 GBK에서 UTF-8 인코딩으로 변환하거나 UTF-8에서 GBK로 변환할 수 있습니다.
먼저 시스템에 convmv가 설치되어 있는지 확인하세요. 그렇지 않은 경우
yum -y install convmv
Install을 사용하세요.
convmv의 구체적인 사용법을 살펴보겠습니다:
convmv -f 소스 인코딩 -t 새 인코딩 [옵션] 파일 이름
공통 매개변수:
-r 하위 폴더를 재귀적으로 처리
–notest 정말 작업 진행, 기본적으로 파일의 실제 작업은 수행되지 않고 테스트만 수행됩니다.
–list는 지원되는 모든 인코딩을 표시합니다.
–unescap %20을 공백으로 바꾸는 등 일부 이스케이프를 수행할 수 있습니다.
예를 들어, utf8로 인코딩된 파일 이름이 있고 이를 GBK 인코딩으로 변환하는 경우 명령은 다음과 같습니다.
convmv - f UTF-8 -t GBK –notetest utf8 인코딩된 파일 이름
이 변환 후 "utf8 인코딩된 파일 이름"은 GBK 인코딩으로 변환됩니다(파일 이름 인코딩만 변환되며, 파일 이름은 내용은 변경되지 않습니다)
위 내용은 Linux에서 파일이 깨졌을 경우 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!