Loading commands from file












3















Is it possible to write commands to text file and then loaded it into terminal as file? If yes, how is the command for loading the file? Thank you.



For instance file_commands:



awk -f program.awk d01.active > out1
awk -f program.awk d02.active > out2


It is because of a problem with running an awk program that doesn't work with command



awk -f program.awk d??.active > out


I need to use program.awk for lots of files and this seemed to me as easier solution when I am not able to repair program for that command with ??.



It is related with this question https://stackoverflow.com/questions/55313187/more-input-files-in-awk?noredirect=1#comment97356807_55313187










share|improve this question




















  • 1





    Isn't this what an ordinary script is? Could you possibly give an example of what it is you want to do?

    – Kusalananda
    7 hours ago











  • I editted my question

    – Lukáš Altman
    7 hours ago
















3















Is it possible to write commands to text file and then loaded it into terminal as file? If yes, how is the command for loading the file? Thank you.



For instance file_commands:



awk -f program.awk d01.active > out1
awk -f program.awk d02.active > out2


It is because of a problem with running an awk program that doesn't work with command



awk -f program.awk d??.active > out


I need to use program.awk for lots of files and this seemed to me as easier solution when I am not able to repair program for that command with ??.



It is related with this question https://stackoverflow.com/questions/55313187/more-input-files-in-awk?noredirect=1#comment97356807_55313187










share|improve this question




















  • 1





    Isn't this what an ordinary script is? Could you possibly give an example of what it is you want to do?

    – Kusalananda
    7 hours ago











  • I editted my question

    – Lukáš Altman
    7 hours ago














3












3








3








Is it possible to write commands to text file and then loaded it into terminal as file? If yes, how is the command for loading the file? Thank you.



For instance file_commands:



awk -f program.awk d01.active > out1
awk -f program.awk d02.active > out2


It is because of a problem with running an awk program that doesn't work with command



awk -f program.awk d??.active > out


I need to use program.awk for lots of files and this seemed to me as easier solution when I am not able to repair program for that command with ??.



It is related with this question https://stackoverflow.com/questions/55313187/more-input-files-in-awk?noredirect=1#comment97356807_55313187










share|improve this question
















Is it possible to write commands to text file and then loaded it into terminal as file? If yes, how is the command for loading the file? Thank you.



For instance file_commands:



awk -f program.awk d01.active > out1
awk -f program.awk d02.active > out2


It is because of a problem with running an awk program that doesn't work with command



awk -f program.awk d??.active > out


I need to use program.awk for lots of files and this seemed to me as easier solution when I am not able to repair program for that command with ??.



It is related with this question https://stackoverflow.com/questions/55313187/more-input-files-in-awk?noredirect=1#comment97356807_55313187







terminal






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 7 hours ago







Lukáš Altman

















asked 7 hours ago









Lukáš AltmanLukáš Altman

565




565








  • 1





    Isn't this what an ordinary script is? Could you possibly give an example of what it is you want to do?

    – Kusalananda
    7 hours ago











  • I editted my question

    – Lukáš Altman
    7 hours ago














  • 1





    Isn't this what an ordinary script is? Could you possibly give an example of what it is you want to do?

    – Kusalananda
    7 hours ago











  • I editted my question

    – Lukáš Altman
    7 hours ago








1




1





Isn't this what an ordinary script is? Could you possibly give an example of what it is you want to do?

– Kusalananda
7 hours ago





Isn't this what an ordinary script is? Could you possibly give an example of what it is you want to do?

– Kusalananda
7 hours ago













I editted my question

– Lukáš Altman
7 hours ago





I editted my question

– Lukáš Altman
7 hours ago










2 Answers
2






active

oldest

votes


















7














If you have a file with a list of shell commands, one per line, then you have a shell script! All you need to do is run it:



sh file_commands


However, that isn't the simplest approach for what I think you need. If you want to run program.awk on each d??.active file in the current directory, you can simply use a loop:



for file in d??.active; do awk -f program.awk "$file" > "$file".out; done


That will create a d01.active.out out file for d01.active, a d02.active.out file for d02.active and so on.






share|improve this answer































    4














    A shell script is essentially a list of commands terminated by line separators that will be interpreted as a list of commands by the specified (or default) interpreter.



    To specify an interpreter your file should start with a hashbang (also called shebang).



    Examples:



    #!/bin/sh
    #!/bin/bash
    #!/bin/ksh
    #!/bin/zsh
    #!/usr/bin/env bash


    Note: each of these interpreters have their own syntax and set of rules. You should study the manual for whichever one you plan on using.





    After your hashbang you can essentially just start listing your commands to be executed each on their own line.



    Note: these commands will be executed in order from top to bottom





    In your example you would want something like:



    #!/bin/sh

    awk -f program.awk d01.active > out1
    awk -f program.awk d02.active > out2


    You would then have to make this file executable and would run it by specifying the full or relative path to the file on the command line. (or by running sh /path/to/file)





    This does seem like a potential x-y problem though and can probably be handled in a more programmatic way.



    Such as:



    #!/bin/bash

    for file in d??.active; do
    n=${file:1:2}
    awk -f program.awk "$file" > "out$n"
    done





    share|improve this answer


























    • Thank you very much

      – Lukáš Altman
      6 hours ago











    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
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f508204%2floading-commands-from-file%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    7














    If you have a file with a list of shell commands, one per line, then you have a shell script! All you need to do is run it:



    sh file_commands


    However, that isn't the simplest approach for what I think you need. If you want to run program.awk on each d??.active file in the current directory, you can simply use a loop:



    for file in d??.active; do awk -f program.awk "$file" > "$file".out; done


    That will create a d01.active.out out file for d01.active, a d02.active.out file for d02.active and so on.






    share|improve this answer




























      7














      If you have a file with a list of shell commands, one per line, then you have a shell script! All you need to do is run it:



      sh file_commands


      However, that isn't the simplest approach for what I think you need. If you want to run program.awk on each d??.active file in the current directory, you can simply use a loop:



      for file in d??.active; do awk -f program.awk "$file" > "$file".out; done


      That will create a d01.active.out out file for d01.active, a d02.active.out file for d02.active and so on.






      share|improve this answer


























        7












        7








        7







        If you have a file with a list of shell commands, one per line, then you have a shell script! All you need to do is run it:



        sh file_commands


        However, that isn't the simplest approach for what I think you need. If you want to run program.awk on each d??.active file in the current directory, you can simply use a loop:



        for file in d??.active; do awk -f program.awk "$file" > "$file".out; done


        That will create a d01.active.out out file for d01.active, a d02.active.out file for d02.active and so on.






        share|improve this answer













        If you have a file with a list of shell commands, one per line, then you have a shell script! All you need to do is run it:



        sh file_commands


        However, that isn't the simplest approach for what I think you need. If you want to run program.awk on each d??.active file in the current directory, you can simply use a loop:



        for file in d??.active; do awk -f program.awk "$file" > "$file".out; done


        That will create a d01.active.out out file for d01.active, a d02.active.out file for d02.active and so on.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered 6 hours ago









        terdonterdon

        132k32262441




        132k32262441

























            4














            A shell script is essentially a list of commands terminated by line separators that will be interpreted as a list of commands by the specified (or default) interpreter.



            To specify an interpreter your file should start with a hashbang (also called shebang).



            Examples:



            #!/bin/sh
            #!/bin/bash
            #!/bin/ksh
            #!/bin/zsh
            #!/usr/bin/env bash


            Note: each of these interpreters have their own syntax and set of rules. You should study the manual for whichever one you plan on using.





            After your hashbang you can essentially just start listing your commands to be executed each on their own line.



            Note: these commands will be executed in order from top to bottom





            In your example you would want something like:



            #!/bin/sh

            awk -f program.awk d01.active > out1
            awk -f program.awk d02.active > out2


            You would then have to make this file executable and would run it by specifying the full or relative path to the file on the command line. (or by running sh /path/to/file)





            This does seem like a potential x-y problem though and can probably be handled in a more programmatic way.



            Such as:



            #!/bin/bash

            for file in d??.active; do
            n=${file:1:2}
            awk -f program.awk "$file" > "out$n"
            done





            share|improve this answer


























            • Thank you very much

              – Lukáš Altman
              6 hours ago
















            4














            A shell script is essentially a list of commands terminated by line separators that will be interpreted as a list of commands by the specified (or default) interpreter.



            To specify an interpreter your file should start with a hashbang (also called shebang).



            Examples:



            #!/bin/sh
            #!/bin/bash
            #!/bin/ksh
            #!/bin/zsh
            #!/usr/bin/env bash


            Note: each of these interpreters have their own syntax and set of rules. You should study the manual for whichever one you plan on using.





            After your hashbang you can essentially just start listing your commands to be executed each on their own line.



            Note: these commands will be executed in order from top to bottom





            In your example you would want something like:



            #!/bin/sh

            awk -f program.awk d01.active > out1
            awk -f program.awk d02.active > out2


            You would then have to make this file executable and would run it by specifying the full or relative path to the file on the command line. (or by running sh /path/to/file)





            This does seem like a potential x-y problem though and can probably be handled in a more programmatic way.



            Such as:



            #!/bin/bash

            for file in d??.active; do
            n=${file:1:2}
            awk -f program.awk "$file" > "out$n"
            done





            share|improve this answer


























            • Thank you very much

              – Lukáš Altman
              6 hours ago














            4












            4








            4







            A shell script is essentially a list of commands terminated by line separators that will be interpreted as a list of commands by the specified (or default) interpreter.



            To specify an interpreter your file should start with a hashbang (also called shebang).



            Examples:



            #!/bin/sh
            #!/bin/bash
            #!/bin/ksh
            #!/bin/zsh
            #!/usr/bin/env bash


            Note: each of these interpreters have their own syntax and set of rules. You should study the manual for whichever one you plan on using.





            After your hashbang you can essentially just start listing your commands to be executed each on their own line.



            Note: these commands will be executed in order from top to bottom





            In your example you would want something like:



            #!/bin/sh

            awk -f program.awk d01.active > out1
            awk -f program.awk d02.active > out2


            You would then have to make this file executable and would run it by specifying the full or relative path to the file on the command line. (or by running sh /path/to/file)





            This does seem like a potential x-y problem though and can probably be handled in a more programmatic way.



            Such as:



            #!/bin/bash

            for file in d??.active; do
            n=${file:1:2}
            awk -f program.awk "$file" > "out$n"
            done





            share|improve this answer















            A shell script is essentially a list of commands terminated by line separators that will be interpreted as a list of commands by the specified (or default) interpreter.



            To specify an interpreter your file should start with a hashbang (also called shebang).



            Examples:



            #!/bin/sh
            #!/bin/bash
            #!/bin/ksh
            #!/bin/zsh
            #!/usr/bin/env bash


            Note: each of these interpreters have their own syntax and set of rules. You should study the manual for whichever one you plan on using.





            After your hashbang you can essentially just start listing your commands to be executed each on their own line.



            Note: these commands will be executed in order from top to bottom





            In your example you would want something like:



            #!/bin/sh

            awk -f program.awk d01.active > out1
            awk -f program.awk d02.active > out2


            You would then have to make this file executable and would run it by specifying the full or relative path to the file on the command line. (or by running sh /path/to/file)





            This does seem like a potential x-y problem though and can probably be handled in a more programmatic way.



            Such as:



            #!/bin/bash

            for file in d??.active; do
            n=${file:1:2}
            awk -f program.awk "$file" > "out$n"
            done






            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited 6 hours ago

























            answered 6 hours ago









            Jesse_bJesse_b

            14k23572




            14k23572













            • Thank you very much

              – Lukáš Altman
              6 hours ago



















            • Thank you very much

              – Lukáš Altman
              6 hours ago

















            Thank you very much

            – Lukáš Altman
            6 hours ago





            Thank you very much

            – Lukáš Altman
            6 hours ago


















            draft saved

            draft discarded




















































            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.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f508204%2floading-commands-from-file%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 to reconfigure Docker Trusted Registry 2.x.x to use CEPH FS mount instead of NFS and other traditional...

            is 'sed' thread safe

            How to make a Squid Proxy server?