Break a large file into smaller pieces
up vote
60
down vote
favorite
How do I break a large, +4GB file into smaller files of about 500MB each.
And how do I re-assemble them again to get the original file?
command-line split
add a comment |
up vote
60
down vote
favorite
How do I break a large, +4GB file into smaller files of about 500MB each.
And how do I re-assemble them again to get the original file?
command-line split
2
text line-wise version: stackoverflow.com/questions/2016894/…
– Ciro Santilli 新疆改造中心 六四事件 法轮功
Apr 26 '16 at 12:22
Related: How to split larger files into smaller parts?
– kenorb
Oct 22 '17 at 13:40
add a comment |
up vote
60
down vote
favorite
up vote
60
down vote
favorite
How do I break a large, +4GB file into smaller files of about 500MB each.
And how do I re-assemble them again to get the original file?
command-line split
How do I break a large, +4GB file into smaller files of about 500MB each.
And how do I re-assemble them again to get the original file?
command-line split
command-line split
edited Feb 20 '11 at 19:13
Gilles
523k12610421575
523k12610421575
asked Sep 4 '10 at 18:51
Stefan
11.4k3182123
11.4k3182123
2
text line-wise version: stackoverflow.com/questions/2016894/…
– Ciro Santilli 新疆改造中心 六四事件 法轮功
Apr 26 '16 at 12:22
Related: How to split larger files into smaller parts?
– kenorb
Oct 22 '17 at 13:40
add a comment |
2
text line-wise version: stackoverflow.com/questions/2016894/…
– Ciro Santilli 新疆改造中心 六四事件 法轮功
Apr 26 '16 at 12:22
Related: How to split larger files into smaller parts?
– kenorb
Oct 22 '17 at 13:40
2
2
text line-wise version: stackoverflow.com/questions/2016894/…
– Ciro Santilli 新疆改造中心 六四事件 法轮功
Apr 26 '16 at 12:22
text line-wise version: stackoverflow.com/questions/2016894/…
– Ciro Santilli 新疆改造中心 六四事件 法轮功
Apr 26 '16 at 12:22
Related: How to split larger files into smaller parts?
– kenorb
Oct 22 '17 at 13:40
Related: How to split larger files into smaller parts?
– kenorb
Oct 22 '17 at 13:40
add a comment |
2 Answers
2
active
oldest
votes
up vote
71
down vote
accepted
You can use split and cat.
For example something like
$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.
(where the input filename is foo
and the last argument is the output prefix). This will create files like foo.000 foo.001
...
The same command with short options:
$ split -b 100k -d -a 3 foo foo
You can also specify "--line-bytes" if you wish it to split on line boundaries instead of just exact number of bytes.
For re-assembling the generated pieces again you can use e.g.:
$ cat foo.* > foo_2
(assuming that the shell sorts the results of shell globbing - and the number of parts does not exceed the system dependent limit of arguments)
You can compare the result via:
$ cmp foo foo_2
$ echo $?
(which should output 0)
Alternatively, you can use a combination of find/sort/xargs to re-assemble the pieces:
$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3
2
Try this command:man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
5
When assembling, I recommendcat foo.{000..NNN}
whereNNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that-d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do withfoo.aaa
,foo.aab
, etc.
– Gilles
Oct 17 '10 at 11:16
1
And bear in mind that, forsplit
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.
– Zorawar
Nov 29 '12 at 18:05
Shouldn't this... cat > foo_3
be... cat >>foo_3
?
– alk
Jul 8 '15 at 12:10
1
If you decide to ease pain by using a utility.rar
and7zip
are often used in making such splits easier to reassemble cross-platform
– infixed
Jun 3 '16 at 18:05
|
show 2 more comments
up vote
4
down vote
You can also do this with Archive Manager if you prefer a GUI. Look under 'Save->Other Options->Split into volumes of'.
5
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
71
down vote
accepted
You can use split and cat.
For example something like
$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.
(where the input filename is foo
and the last argument is the output prefix). This will create files like foo.000 foo.001
...
The same command with short options:
$ split -b 100k -d -a 3 foo foo
You can also specify "--line-bytes" if you wish it to split on line boundaries instead of just exact number of bytes.
For re-assembling the generated pieces again you can use e.g.:
$ cat foo.* > foo_2
(assuming that the shell sorts the results of shell globbing - and the number of parts does not exceed the system dependent limit of arguments)
You can compare the result via:
$ cmp foo foo_2
$ echo $?
(which should output 0)
Alternatively, you can use a combination of find/sort/xargs to re-assemble the pieces:
$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3
2
Try this command:man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
5
When assembling, I recommendcat foo.{000..NNN}
whereNNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that-d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do withfoo.aaa
,foo.aab
, etc.
– Gilles
Oct 17 '10 at 11:16
1
And bear in mind that, forsplit
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.
– Zorawar
Nov 29 '12 at 18:05
Shouldn't this... cat > foo_3
be... cat >>foo_3
?
– alk
Jul 8 '15 at 12:10
1
If you decide to ease pain by using a utility.rar
and7zip
are often used in making such splits easier to reassemble cross-platform
– infixed
Jun 3 '16 at 18:05
|
show 2 more comments
up vote
71
down vote
accepted
You can use split and cat.
For example something like
$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.
(where the input filename is foo
and the last argument is the output prefix). This will create files like foo.000 foo.001
...
The same command with short options:
$ split -b 100k -d -a 3 foo foo
You can also specify "--line-bytes" if you wish it to split on line boundaries instead of just exact number of bytes.
For re-assembling the generated pieces again you can use e.g.:
$ cat foo.* > foo_2
(assuming that the shell sorts the results of shell globbing - and the number of parts does not exceed the system dependent limit of arguments)
You can compare the result via:
$ cmp foo foo_2
$ echo $?
(which should output 0)
Alternatively, you can use a combination of find/sort/xargs to re-assemble the pieces:
$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3
2
Try this command:man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
5
When assembling, I recommendcat foo.{000..NNN}
whereNNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that-d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do withfoo.aaa
,foo.aab
, etc.
– Gilles
Oct 17 '10 at 11:16
1
And bear in mind that, forsplit
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.
– Zorawar
Nov 29 '12 at 18:05
Shouldn't this... cat > foo_3
be... cat >>foo_3
?
– alk
Jul 8 '15 at 12:10
1
If you decide to ease pain by using a utility.rar
and7zip
are often used in making such splits easier to reassemble cross-platform
– infixed
Jun 3 '16 at 18:05
|
show 2 more comments
up vote
71
down vote
accepted
up vote
71
down vote
accepted
You can use split and cat.
For example something like
$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.
(where the input filename is foo
and the last argument is the output prefix). This will create files like foo.000 foo.001
...
The same command with short options:
$ split -b 100k -d -a 3 foo foo
You can also specify "--line-bytes" if you wish it to split on line boundaries instead of just exact number of bytes.
For re-assembling the generated pieces again you can use e.g.:
$ cat foo.* > foo_2
(assuming that the shell sorts the results of shell globbing - and the number of parts does not exceed the system dependent limit of arguments)
You can compare the result via:
$ cmp foo foo_2
$ echo $?
(which should output 0)
Alternatively, you can use a combination of find/sort/xargs to re-assemble the pieces:
$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3
You can use split and cat.
For example something like
$ split --bytes 500M --numeric-suffixes --suffix-length=3 foo foo.
(where the input filename is foo
and the last argument is the output prefix). This will create files like foo.000 foo.001
...
The same command with short options:
$ split -b 100k -d -a 3 foo foo
You can also specify "--line-bytes" if you wish it to split on line boundaries instead of just exact number of bytes.
For re-assembling the generated pieces again you can use e.g.:
$ cat foo.* > foo_2
(assuming that the shell sorts the results of shell globbing - and the number of parts does not exceed the system dependent limit of arguments)
You can compare the result via:
$ cmp foo foo_2
$ echo $?
(which should output 0)
Alternatively, you can use a combination of find/sort/xargs to re-assemble the pieces:
$ find -maxdepth 1 -type f -name 'foo.*' | sort | xargs cat > foo_3
edited Nov 27 at 6:29
rogerdpack
3231312
3231312
answered Sep 4 '10 at 19:00
maxschlepzig
33.1k32135208
33.1k32135208
2
Try this command:man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
5
When assembling, I recommendcat foo.{000..NNN}
whereNNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that-d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do withfoo.aaa
,foo.aab
, etc.
– Gilles
Oct 17 '10 at 11:16
1
And bear in mind that, forsplit
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.
– Zorawar
Nov 29 '12 at 18:05
Shouldn't this... cat > foo_3
be... cat >>foo_3
?
– alk
Jul 8 '15 at 12:10
1
If you decide to ease pain by using a utility.rar
and7zip
are often used in making such splits easier to reassemble cross-platform
– infixed
Jun 3 '16 at 18:05
|
show 2 more comments
2
Try this command:man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
5
When assembling, I recommendcat foo.{000..NNN}
whereNNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that-d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do withfoo.aaa
,foo.aab
, etc.
– Gilles
Oct 17 '10 at 11:16
1
And bear in mind that, forsplit
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.
– Zorawar
Nov 29 '12 at 18:05
Shouldn't this... cat > foo_3
be... cat >>foo_3
?
– alk
Jul 8 '15 at 12:10
1
If you decide to ease pain by using a utility.rar
and7zip
are often used in making such splits easier to reassemble cross-platform
– infixed
Jun 3 '16 at 18:05
2
2
Try this command:
man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
Try this command:
man split cat md5sum
– Kevin M
Sep 4 '10 at 19:13
5
5
When assembling, I recommend
cat foo.{000..NNN}
where NNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that -d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do with foo.aaa
, foo.aab
, etc.– Gilles
Oct 17 '10 at 11:16
When assembling, I recommend
cat foo.{000..NNN}
where NNN
is the last expected piece. That way you get an error message if one of the pieces is missing. But note that -d
to get numeric suffixes is specific to GNU split; on other platforms you have to make do with foo.aaa
, foo.aab
, etc.– Gilles
Oct 17 '10 at 11:16
1
1
And bear in mind that, for
split
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.– Zorawar
Nov 29 '12 at 18:05
And bear in mind that, for
split
, KB = 1000, K = 1024, MB = 1000*1000, M = 1024*1024 etc.– Zorawar
Nov 29 '12 at 18:05
Shouldn't this
... cat > foo_3
be ... cat >>foo_3
?– alk
Jul 8 '15 at 12:10
Shouldn't this
... cat > foo_3
be ... cat >>foo_3
?– alk
Jul 8 '15 at 12:10
1
1
If you decide to ease pain by using a utility.
rar
and 7zip
are often used in making such splits easier to reassemble cross-platform– infixed
Jun 3 '16 at 18:05
If you decide to ease pain by using a utility.
rar
and 7zip
are often used in making such splits easier to reassemble cross-platform– infixed
Jun 3 '16 at 18:05
|
show 2 more comments
up vote
4
down vote
You can also do this with Archive Manager if you prefer a GUI. Look under 'Save->Other Options->Split into volumes of'.
5
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
add a comment |
up vote
4
down vote
You can also do this with Archive Manager if you prefer a GUI. Look under 'Save->Other Options->Split into volumes of'.
5
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
add a comment |
up vote
4
down vote
up vote
4
down vote
You can also do this with Archive Manager if you prefer a GUI. Look under 'Save->Other Options->Split into volumes of'.
You can also do this with Archive Manager if you prefer a GUI. Look under 'Save->Other Options->Split into volumes of'.
answered Sep 5 '10 at 13:44
user1498
5
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
add a comment |
5
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
5
5
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
i tagged it 'command-line', but thanks for the answer :)
– Stefan
Sep 5 '10 at 19:25
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f1588%2fbreak-a-large-file-into-smaller-pieces%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
text line-wise version: stackoverflow.com/questions/2016894/…
– Ciro Santilli 新疆改造中心 六四事件 法轮功
Apr 26 '16 at 12:22
Related: How to split larger files into smaller parts?
– kenorb
Oct 22 '17 at 13:40