내 Linux 환경에서는 알려지지 않은 내용이 있습니다! 복사한 포맷되지 않은 원본 파일을 처리하는 이유Win7prof(utf-16으로 인코딩됨), 생성된 파일은 모두 엉망입니다. Linux에서는 다음을 사용하여 정상적으로 인쇄됩니다.고양이명령을 내리지만 만약 내가육, 또한 다음과 같이 엉망이 됩니다.
사용자 이름, 그룹; 이런, 으아아아악¸çæçæççæçäæ¸çæçæççæçäæ¡ ææææçäæ¸çææææ°æâ¸ææ¤æ'ã�æ¡ ¤çæâ'çççæççस^@ææ'æ¤çä¸ææææ¤æäææ¸ææææ°æâ¸æææ¤æ'¸æäæ'æ¤çæææ´æ¤çä¸ææææ¤æääæ¡ 아 아 °æâ¸æææ¤çæâ´ççæçà¸^@ææçæ¼æ¸â¸æææ°æçææ æçäæ¸çææææçææææçäæ¼çææææ°æâ¸ææ検æ´à¸^@ææçæœæææ¸â¸ææ°æçææ æçäæç¼æ°æ⸠ugh 퍼프 퍼프 퍼프 퍼프 퍼프 퍼프^@ 퍼프 퍼프 퍼프 퍼프^@ 퍼프 퍼프 퍼프 퍼프^@
Windows로 이동하면 처음 몇 단어가 표시된 상태로 동일한 파일이 열립니다. 영어, 나머지 파일은 한자로 인쇄됩니다!
좋다:
사용자 이름;전체 이름;그룹怀怀怀怀氀cen⸀怀怀怀㬀䀀 even怀怀怀瀜怀怀怀怀⸀怀怀bowl 搀⸀猀怀怀怀眀怀怀怀怀怀怀怀怀怀cen⸀怀怀怀㬀䔀䄀 문을 열어도
파일의 문자 세트를 확인하면 다음이 반환됩니다.
애플리케이션/옥텟 스트림
나는 달릴 수 없다상명령을 거부하니까옥텟 스트림
캐릭터 세트로!
내가 확실히 아는 유일한 것은 내 파일 형식이 항상 Linux와 Windows 간에 호환된다는 것입니다. Linux에서 파일을 수정하고 Windows로 영원히 ftp로 다시 보냈으며 지금까지는 다음 명령을 사용하여 아무런 문제도 없었습니다.
[me@localhost fkhodada]# awk -F';' -v OFS=';'{ for (i=3; i<=NF; i++) print $1,$2,$i }
' file1 > final
답변1
이 시나리오를 가지고 놀다가 Windows 환경에서 내보낸 원본 파일에 인코딩 문제가 있다는 것을 깨달았습니다.
그래서 동일한 루틴을 반복했습니다. 이번에는 "다른 이름으로 저장" 매개변수에서 인코딩 유형을 UTF8로 선택했습니다. 파일은 Linux에서 괜찮아 보였고, 수정하고 Windows로 다시 내보낸 후에도 Windows 메모장에서도 아주 괜찮아 보였습니다. 좋은.