명령 의 /b
플래그는 copy
파일을 이진 (즉, 의미없는 바이트의 원시 스트림 /a
)으로 취급하고 텍스트 행으로 처리 하는 기본 (또는 ) 동작 대신 바이트 단위로 파일을 복사합니다 ( 줄 끝 포함) 문자, 파일 끝 등)
기본 텍스트 동작이나 이진 스위치로 텍스트 파일을 병합 할 수 있지만 거의 모든 이진 파일이 작동하지 않습니다. 이진 파일에는 일반적으로 헤더 , 메타 데이터 , 데이터 구조 가 있기 때문에 단순히 두 개의 이진 파일에서 바이트를 복사하여 작동 할 것으로 예상 할 수 없습니다.등 파일의 형식을 정의합니다. 이진 복사를 수행하면 모든 바이트를 그대로 복사하게되므로 이러한 구조를 원래 위치에 두지 않아야합니다. 따라서 열면 구문 분석 기능에 문제가 발생하고 본질적으로 손상된 데이터가 무엇인지 알 수 있습니다 . 일부 프로그램은 이해가되지 않는 부분을 무시하고 단순히 그들이 할 수있는 것을 보여 주지만 (이를 통해 입체 사진이 작동 할 수 있음), 일부는 오류가 발생하여 파일이 손상되었다고 불평 할 것입니다. 손상을 감지하는 기능은 파일 유형에 따라 다릅니다.
예를 들어, 간단한 PDF 형식을 만들어 봅시다.
Byte(s) Meaning
---------------------
File header:
0-1 # of Pages
2-3 Language
4-5 Font
6-EOF Data (each page encoded separately)
Page data:
0-1 Page number
2-3 # of characters on page
4-#chars Letters contained on the page
보시다시피, 각 파일에는 일반적인 정보가 포함 된 파일 수준 헤더와 페이지 데이터가 포함 된 각 페이지의 데이터 블록이 포함됩니다. 그런 다음 각각 하나의 페이지를 포함하는 두 개의 파일을 가져 와서 이진 파일로 병합하면 하나의 두 페이지 파일을 만들지 않고 한 페이지로 시작하는 하나의 손상된 파일을 만든 다음 여러 개의 정크 파일 (파일)이 생깁니다 프로그램이 2 페이지를 읽으려고하면 헤더가 의미가 없습니다.)
MP3에서도 마찬가지입니다. 이렇게 결합 하면 두 번째 파일의 시작 및 / 또는 끝에 ID3 태그 가 유지되고 플레이어가 다음 프레임을 읽으려고 할 때 오디오 데이터가 필요하지만 헤더를 찾는 중입니다. 오디오 데이터의 예상 형식과 일치하지 않는 두 번째 파일이므로 수행 할 작업을 모릅니다. 일부 플레이어는 헤더를 오디오 데이터 (정적 / 노이즈 / 팝 등으로 재생 될 수 있음)로 재생하고 일부는 다음 올바른 프레임까지 사운드를 차단하고 일부는 노래 재생을 완전히 중지하고 일부는 충돌 할 수도 있습니다. .
이 copy
명령은 일반 텍스트 이외의 파일 형식 (아직 ASCII 텍스트 만 해당)에 대해서는 아무것도 모르므로 일반 텍스트 만 올바르게 결합 할 수 있습니다. 이진 파일은 내용을 올바르게 구문 분석하고 해석하는 방법을 알고있는 편집기를 사용하여 결합해야합니다.