Argument list too long when zipping large list of certain files in a folder
I'm trying to zip a certain large number of files by creating an array of them. Then I tried to run the zip command but met with "Argument list too long" error.
declare -a arr=()
fixed=5
for i in `seq 10 1 200`; do
for j in `seq $((i+fixed)) 1 200`; do
arr+=("${i}_${j}.xxx")
done
done
new_arr=$(printf ",%s" "${arr[@]}")
new_arr=${new_arr:1}
zip all_data.zip {$new_arr}
bash
New contributor
add a comment |
I'm trying to zip a certain large number of files by creating an array of them. Then I tried to run the zip command but met with "Argument list too long" error.
declare -a arr=()
fixed=5
for i in `seq 10 1 200`; do
for j in `seq $((i+fixed)) 1 200`; do
arr+=("${i}_${j}.xxx")
done
done
new_arr=$(printf ",%s" "${arr[@]}")
new_arr=${new_arr:1}
zip all_data.zip {$new_arr}
bash
New contributor
As an alternative: you can create an empty zip file at the beginning and add a file to that zip file, instead of making an array first and adding them all at once. Might save you a loop, unless you have need for the array for other reasons...
– Henno Brandsma
yesterday
add a comment |
I'm trying to zip a certain large number of files by creating an array of them. Then I tried to run the zip command but met with "Argument list too long" error.
declare -a arr=()
fixed=5
for i in `seq 10 1 200`; do
for j in `seq $((i+fixed)) 1 200`; do
arr+=("${i}_${j}.xxx")
done
done
new_arr=$(printf ",%s" "${arr[@]}")
new_arr=${new_arr:1}
zip all_data.zip {$new_arr}
bash
New contributor
I'm trying to zip a certain large number of files by creating an array of them. Then I tried to run the zip command but met with "Argument list too long" error.
declare -a arr=()
fixed=5
for i in `seq 10 1 200`; do
for j in `seq $((i+fixed)) 1 200`; do
arr+=("${i}_${j}.xxx")
done
done
new_arr=$(printf ",%s" "${arr[@]}")
new_arr=${new_arr:1}
zip all_data.zip {$new_arr}
bash
bash
New contributor
New contributor
edited yesterday
Zack
New contributor
asked yesterday
ZackZack
234
234
New contributor
New contributor
As an alternative: you can create an empty zip file at the beginning and add a file to that zip file, instead of making an array first and adding them all at once. Might save you a loop, unless you have need for the array for other reasons...
– Henno Brandsma
yesterday
add a comment |
As an alternative: you can create an empty zip file at the beginning and add a file to that zip file, instead of making an array first and adding them all at once. Might save you a loop, unless you have need for the array for other reasons...
– Henno Brandsma
yesterday
As an alternative: you can create an empty zip file at the beginning and add a file to that zip file, instead of making an array first and adding them all at once. Might save you a loop, unless you have need for the array for other reasons...
– Henno Brandsma
yesterday
As an alternative: you can create an empty zip file at the beginning and add a file to that zip file, instead of making an array first and adding them all at once. Might save you a loop, unless you have need for the array for other reasons...
– Henno Brandsma
yesterday
add a comment |
1 Answer
1
active
oldest
votes
extract from man zip
( linux version )
zip -@ foo
will store the files listed one per line on stdin in foo.zip.
example from the same man page
find . -name "*.[ch]" -print | zip source -@
So steps will be :
build a list off all files to be archive , format must one file name by line
run
zip
command
cat BIG_FILENAME_LIST.txt | zip thebigziparchive -@
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Zack is a new contributor. Be nice, and check out our Code of Conduct.
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%2f508247%2fargument-list-too-long-when-zipping-large-list-of-certain-files-in-a-folder%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
extract from man zip
( linux version )
zip -@ foo
will store the files listed one per line on stdin in foo.zip.
example from the same man page
find . -name "*.[ch]" -print | zip source -@
So steps will be :
build a list off all files to be archive , format must one file name by line
run
zip
command
cat BIG_FILENAME_LIST.txt | zip thebigziparchive -@
add a comment |
extract from man zip
( linux version )
zip -@ foo
will store the files listed one per line on stdin in foo.zip.
example from the same man page
find . -name "*.[ch]" -print | zip source -@
So steps will be :
build a list off all files to be archive , format must one file name by line
run
zip
command
cat BIG_FILENAME_LIST.txt | zip thebigziparchive -@
add a comment |
extract from man zip
( linux version )
zip -@ foo
will store the files listed one per line on stdin in foo.zip.
example from the same man page
find . -name "*.[ch]" -print | zip source -@
So steps will be :
build a list off all files to be archive , format must one file name by line
run
zip
command
cat BIG_FILENAME_LIST.txt | zip thebigziparchive -@
extract from man zip
( linux version )
zip -@ foo
will store the files listed one per line on stdin in foo.zip.
example from the same man page
find . -name "*.[ch]" -print | zip source -@
So steps will be :
build a list off all files to be archive , format must one file name by line
run
zip
command
cat BIG_FILENAME_LIST.txt | zip thebigziparchive -@
answered yesterday
EchoMike444EchoMike444
1,0506
1,0506
add a comment |
add a comment |
Zack is a new contributor. Be nice, and check out our Code of Conduct.
Zack is a new contributor. Be nice, and check out our Code of Conduct.
Zack is a new contributor. Be nice, and check out our Code of Conduct.
Zack is a new contributor. Be nice, and check out our Code of Conduct.
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.
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%2f508247%2fargument-list-too-long-when-zipping-large-list-of-certain-files-in-a-folder%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
As an alternative: you can create an empty zip file at the beginning and add a file to that zip file, instead of making an array first and adding them all at once. Might save you a loop, unless you have need for the array for other reasons...
– Henno Brandsma
yesterday