큰 파일을 작은 조각으로 나눕니다.


답변:


79

splitcat을 사용할 수 있습니다 .

예를 들어

$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.

(여기서 입력 파일 이름은 foo마지막 인수는 출력 접두사입니다). 이것은 다음과 같은 파일을 생성합니다 foo.000 foo.001...

짧은 옵션을 가진 동일한 명령 :

$ split -b 100k -d -a 3 foo foo

정확한 바이트 수 대신 행 경계에서 분할하려면 "--line-bytes"를 지정할 수도 있습니다.

생성 된 조각을 다시 조립하기 위해 다음을 사용할 수 있습니다.

$ cat foo.* > foo_2

(쉘이 쉘 globbing의 결과를 정렬한다고 가정하고-부품 수는 시스템 종속 인수 한계를 초과하지 않습니다)

다음을 통해 결과를 비교할 수 있습니다.

$ cmp foo foo_2
$ echo $?

(0을 출력해야 함)

또는 find / sort / xargs 조합을 사용하여 조각을 다시 조립할 수 있습니다.

$ find -maxdepth 1 -type f -name 'foo.*'  | sort | xargs cat > foo_3

2
man split cat md5sum
Kevin M

6
조립 때, 나는 추천 cat foo.{000..NNN}어디에서 NNN마지막 예상되는 작품이다. 이렇게하면 조각 중 하나가없는 경우 오류 메시지가 표시됩니다. 그러나 -d숫자 접미사를 얻는 것은 GNU 분할에만 해당됩니다. 다른 플랫폼 foo.aaa에서는 foo.aab, 등 을 사용해야합니다 .
Gilles

1
그리고 마음에 곰이에 대한 splitKB = 1000 = 1024 K, MB = * 1000 1000, M = 1024 * 1024 등
Zorawar

1
이 안 ... cat > foo_3... cat >>foo_3?
alk

1
유틸리티를 사용하여 통증을 완화하기로 결정한 경우. rar그리고 7zip종종 크로스 플랫폼 재 조립 등의 분할을 쉽게 제작에 사용되는
infixed

4

GUI를 원한다면 Archive Manager를 사용하여이 작업을 수행 할 수도 있습니다. '저장-> 기타 옵션-> 볼륨으로 분할'에서 확인하십시오.


5
나는 '명령 줄'에 태그를 달았지만, 답변에 감사드립니다 :)
Stefan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.