텍스트 파일의 압축을 풀면 콘텐츠 형식이 변경됩니다.

텍스트 파일의 압축을 풀면 콘텐츠 형식이 변경됩니다.

일부 텍스트 파일을 압축하여 이메일에 첨부 파일로 보냈습니다. 텍스트 파일을 추출한 후 형식이 변경되었습니다.

앞으로:

line1
line2
line3 

뒤쪽에:

line1line2line3

압축을 푼 후에도 원본 형식을 유지하는 방법이 있나요?

사용된 명령:

zip file.zip *.txt

답변1

Panki가 언급했듯이 Windows 시스템에서 Linux 텍스트 파일을 열려고 합니다.

짧은 답변: 원하는 것은 Windows에서 사용하는 CRLF 줄 종결자를 사용하여 텍스트 파일을 저장하는 것입니다(긴 답변 읽기). 이렇게 하려면 Gnome의 공식 텍스트 편집기인 gedit를 사용하여 파일을 엽니다.

  1. 오른쪽 상단 모서리에 있는 가로선 3개를 누르세요.
  2. 다른 이름으로 저장...
  3. 맨 아래에 "메뉴"라는 항목이 표시됩니다.줄 끝
  4. 선택하다윈도우저장을 클릭하세요.

이제 괜찮을 것 같아요.

긴 답변:

각 운영 체제는 (대부분) 개행 문자에 서로 다른 이스케이프 시퀀스를 사용합니다.

참고로:

  • Windows에서는 CRLF(\r\n) -hex value=0d 0a를 사용합니다.
  • MAC OS는 CR(\r)을 사용합니다 - 16진수 값 = 0d
  • Linux는 LF(\n)를 사용합니다. - 16진수 값 = 0a

따라서 한 운영 체제에서 다른 운영 체제로(귀하의 경우 Linux에서 Windows로) 파일을 전송할 때 텍스트 편집기 \r\n에서는 \n. 그러나 그것은 진실이 아니다.

물론 해결책이 있습니다. 모든 줄 종료를 고려하는 최신 텍스트 편집기를 사용할 수 있습니다. 예를 들어 Notepad++, VScode, Atom 등이 있습니다.

이 명령을 사용하여 어떤 회선 종료 기술이 사용되고 있는지 확인할 수 있습니다 file.

$ file file*
file1: ASCII text
file2: ASCII text, with CR line terminators
file3: ASCII text, with CRLF line terminators

3개 파일 모두 "test"라는 단어만 포함되어 있습니다. 그러나 위에서 우리는 결론을 도출합니다.

  • file1은 LF(리눅스)를 사용합니다.
  • CR을 사용하는 file2(MAC OS)
  • file3은 CRLF를 사용합니다(Windows).

다음을 사용하여 텍스트 자체의 차이점을 확인할 수도 있습니다.od

$ od -t x1 file1
0000000 74 65 73 74 0a
0000006
$ od -t x1 file2
0000000 74 65 73 74 0d
0000006
$ od -t x1 file3
0000000 74 65 73 74 0d 0a
0000010

마지막에 차이점을 확인하세요.

관련 정보