Run curl commands in parallel using xargs with inputs from csv

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












I have a csv file with several columns including a sequence number and an image URL. The file is 450+ lines.



1,text1,text2,http://image_a.jpg
2,text1,text2,http://image_b.jpg
3,text1,text2,http://image_c.jpg
.
.
.


The goal is to download the image at the URL with a filename being the sequence. I accomplished this successfully with the following script



while IFS=, read col1 col2 col3 col4
do
curl $col4 > $col1.jpg
done < myfile.csv


Now I want to run the curl commands in parallel using xargs -P. (I don't want to just background using & as I want to limit the number of processes.) I see examples using -I and -R but cannot figure out how to use multiple fields from a line of the csv file in the xargs command.



I realize gnu parallel and wget may be better options but they are not available in my unix environment.



Thanks.










share|improve this question









New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.



















  • maybe this will help .... stackoverflow.com/questions/38160/…
    – jsotola
    6 mins ago















up vote
0
down vote

favorite












I have a csv file with several columns including a sequence number and an image URL. The file is 450+ lines.



1,text1,text2,http://image_a.jpg
2,text1,text2,http://image_b.jpg
3,text1,text2,http://image_c.jpg
.
.
.


The goal is to download the image at the URL with a filename being the sequence. I accomplished this successfully with the following script



while IFS=, read col1 col2 col3 col4
do
curl $col4 > $col1.jpg
done < myfile.csv


Now I want to run the curl commands in parallel using xargs -P. (I don't want to just background using & as I want to limit the number of processes.) I see examples using -I and -R but cannot figure out how to use multiple fields from a line of the csv file in the xargs command.



I realize gnu parallel and wget may be better options but they are not available in my unix environment.



Thanks.










share|improve this question









New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.



















  • maybe this will help .... stackoverflow.com/questions/38160/…
    – jsotola
    6 mins ago













up vote
0
down vote

favorite









up vote
0
down vote

favorite











I have a csv file with several columns including a sequence number and an image URL. The file is 450+ lines.



1,text1,text2,http://image_a.jpg
2,text1,text2,http://image_b.jpg
3,text1,text2,http://image_c.jpg
.
.
.


The goal is to download the image at the URL with a filename being the sequence. I accomplished this successfully with the following script



while IFS=, read col1 col2 col3 col4
do
curl $col4 > $col1.jpg
done < myfile.csv


Now I want to run the curl commands in parallel using xargs -P. (I don't want to just background using & as I want to limit the number of processes.) I see examples using -I and -R but cannot figure out how to use multiple fields from a line of the csv file in the xargs command.



I realize gnu parallel and wget may be better options but they are not available in my unix environment.



Thanks.










share|improve this question









New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











I have a csv file with several columns including a sequence number and an image URL. The file is 450+ lines.



1,text1,text2,http://image_a.jpg
2,text1,text2,http://image_b.jpg
3,text1,text2,http://image_c.jpg
.
.
.


The goal is to download the image at the URL with a filename being the sequence. I accomplished this successfully with the following script



while IFS=, read col1 col2 col3 col4
do
curl $col4 > $col1.jpg
done < myfile.csv


Now I want to run the curl commands in parallel using xargs -P. (I don't want to just background using & as I want to limit the number of processes.) I see examples using -I and -R but cannot figure out how to use multiple fields from a line of the csv file in the xargs command.



I realize gnu parallel and wget may be better options but they are not available in my unix environment.



Thanks.







curl xargs






share|improve this question









New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 5 mins ago





















New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 25 mins ago









Scott Nelson

1011




1011




New contributor




Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






Scott Nelson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











  • maybe this will help .... stackoverflow.com/questions/38160/…
    – jsotola
    6 mins ago

















  • maybe this will help .... stackoverflow.com/questions/38160/…
    – jsotola
    6 mins ago
















maybe this will help .... stackoverflow.com/questions/38160/…
– jsotola
6 mins ago





maybe this will help .... stackoverflow.com/questions/38160/…
– jsotola
6 mins ago
















active

oldest

votes











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',
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
);



);






Scott Nelson is a new contributor. Be nice, and check out our Code of Conduct.









 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f479233%2frun-curl-commands-in-parallel-using-xargs-with-inputs-from-csv%23new-answer', 'question_page');

);

Post as a guest



































active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes








Scott Nelson is a new contributor. Be nice, and check out our Code of Conduct.









 

draft saved


draft discarded


















Scott Nelson is a new contributor. Be nice, and check out our Code of Conduct.












Scott Nelson is a new contributor. Be nice, and check out our Code of Conduct.











Scott Nelson is a new contributor. Be nice, and check out our Code of Conduct.













 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f479233%2frun-curl-commands-in-parallel-using-xargs-with-inputs-from-csv%23new-answer', 'question_page');

);

Post as a guest













































































Popular posts from this blog

How to check contact read email or not when send email to Individual?

Displaying single band from multi-band raster using QGIS

How many registers does an x86_64 CPU actually have?