How to move N lines from one file to another












1














I want to download multiple files, so I decided to create 4 text files that are handled with a script.



toDownload.txt | this file will hold a list of links to download.
inQueue.txt | the files currently downloading will move here and if failed we can continue later using wget -c flag.
downloaded.txt | this file will hold file links that have finished downloading.
failed.txt | this file will hold links that failed to start downloading for example if the URL returns 404.


how can I move the first x number of links from a file and move it to another file?










share|improve this question









New contributor




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




















  • @PerlDuck thanks for your suggestion, I have updated the title.
    – Abdellah Chadidi
    Dec 29 '18 at 16:59
















1














I want to download multiple files, so I decided to create 4 text files that are handled with a script.



toDownload.txt | this file will hold a list of links to download.
inQueue.txt | the files currently downloading will move here and if failed we can continue later using wget -c flag.
downloaded.txt | this file will hold file links that have finished downloading.
failed.txt | this file will hold links that failed to start downloading for example if the URL returns 404.


how can I move the first x number of links from a file and move it to another file?










share|improve this question









New contributor




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




















  • @PerlDuck thanks for your suggestion, I have updated the title.
    – Abdellah Chadidi
    Dec 29 '18 at 16:59














1












1








1







I want to download multiple files, so I decided to create 4 text files that are handled with a script.



toDownload.txt | this file will hold a list of links to download.
inQueue.txt | the files currently downloading will move here and if failed we can continue later using wget -c flag.
downloaded.txt | this file will hold file links that have finished downloading.
failed.txt | this file will hold links that failed to start downloading for example if the URL returns 404.


how can I move the first x number of links from a file and move it to another file?










share|improve this question









New contributor




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











I want to download multiple files, so I decided to create 4 text files that are handled with a script.



toDownload.txt | this file will hold a list of links to download.
inQueue.txt | the files currently downloading will move here and if failed we can continue later using wget -c flag.
downloaded.txt | this file will hold file links that have finished downloading.
failed.txt | this file will hold links that failed to start downloading for example if the URL returns 404.


how can I move the first x number of links from a file and move it to another file?







16.04 server cron wget






share|improve this question









New contributor




Abdellah Chadidi 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




Abdellah Chadidi 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 Dec 29 '18 at 16:58





















New contributor




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









asked Dec 29 '18 at 14:30









Abdellah Chadidi

62




62




New contributor




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





New contributor





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






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












  • @PerlDuck thanks for your suggestion, I have updated the title.
    – Abdellah Chadidi
    Dec 29 '18 at 16:59


















  • @PerlDuck thanks for your suggestion, I have updated the title.
    – Abdellah Chadidi
    Dec 29 '18 at 16:59
















@PerlDuck thanks for your suggestion, I have updated the title.
– Abdellah Chadidi
Dec 29 '18 at 16:59




@PerlDuck thanks for your suggestion, I have updated the title.
– Abdellah Chadidi
Dec 29 '18 at 16:59










1 Answer
1






active

oldest

votes


















1














#!/bin/sh

lines=3
head -n $lines file1.txt >> file2.txt
sed -i -e "1,$lines d" file1.txt


This will append the first three lines from file1.txt to file2.txt
and then delete the lines 1…3 from file1.txt effectively
moving the first 3 lines from file1.txt to the end of file2.txt.






share|improve this answer





















    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "89"
    };
    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: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    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
    });


    }
    });






    Abdellah Chadidi 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%2faskubuntu.com%2fquestions%2f1105376%2fhow-to-move-n-lines-from-one-file-to-another%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









    1














    #!/bin/sh

    lines=3
    head -n $lines file1.txt >> file2.txt
    sed -i -e "1,$lines d" file1.txt


    This will append the first three lines from file1.txt to file2.txt
    and then delete the lines 1…3 from file1.txt effectively
    moving the first 3 lines from file1.txt to the end of file2.txt.






    share|improve this answer


























      1














      #!/bin/sh

      lines=3
      head -n $lines file1.txt >> file2.txt
      sed -i -e "1,$lines d" file1.txt


      This will append the first three lines from file1.txt to file2.txt
      and then delete the lines 1…3 from file1.txt effectively
      moving the first 3 lines from file1.txt to the end of file2.txt.






      share|improve this answer
























        1












        1








        1






        #!/bin/sh

        lines=3
        head -n $lines file1.txt >> file2.txt
        sed -i -e "1,$lines d" file1.txt


        This will append the first three lines from file1.txt to file2.txt
        and then delete the lines 1…3 from file1.txt effectively
        moving the first 3 lines from file1.txt to the end of file2.txt.






        share|improve this answer












        #!/bin/sh

        lines=3
        head -n $lines file1.txt >> file2.txt
        sed -i -e "1,$lines d" file1.txt


        This will append the first three lines from file1.txt to file2.txt
        and then delete the lines 1…3 from file1.txt effectively
        moving the first 3 lines from file1.txt to the end of file2.txt.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Dec 29 '18 at 14:55









        PerlDuck

        5,39411231




        5,39411231






















            Abdellah Chadidi is a new contributor. Be nice, and check out our Code of Conduct.










            draft saved

            draft discarded


















            Abdellah Chadidi is a new contributor. Be nice, and check out our Code of Conduct.













            Abdellah Chadidi is a new contributor. Be nice, and check out our Code of Conduct.












            Abdellah Chadidi is a new contributor. Be nice, and check out our Code of Conduct.
















            Thanks for contributing an answer to Ask Ubuntu!


            • 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.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1105376%2fhow-to-move-n-lines-from-one-file-to-another%23new-answer', 'question_page');
            }
            );

            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







            Popular posts from this blog

            How did Captain America manage to do this?

            迪纳利

            南乌拉尔铁路局