Batch script with multiple input sessions












0















I am trying to make a batch script that automates login in and out of Cisco Anyconnect. I noticed that Anyconnect comes with a CLI application which should make this easy to do. However, my issue is that the CLI app requires me to provide input over multiple session. The flow is the following:




  1. First I type connect example.com and hit enter. Here example.com is the server I wish to connect to.

  2. Then I insert my username and hit enter.

  3. Lastly, I insert my password and hit enter.


I have read guides on how to pass multiple arguments to a batch script, but it seems that I need to do something extra in order for the arguments to be entered in accordance with the flow, i.e. the arguments should for instance be entered as if the return key is simulated. Is there someone with a suggestion?










share|improve this question


















  • 1





    Have you already looked at a SendKeys solution?

    – vonPryz
    Nov 27 '18 at 6:54
















0















I am trying to make a batch script that automates login in and out of Cisco Anyconnect. I noticed that Anyconnect comes with a CLI application which should make this easy to do. However, my issue is that the CLI app requires me to provide input over multiple session. The flow is the following:




  1. First I type connect example.com and hit enter. Here example.com is the server I wish to connect to.

  2. Then I insert my username and hit enter.

  3. Lastly, I insert my password and hit enter.


I have read guides on how to pass multiple arguments to a batch script, but it seems that I need to do something extra in order for the arguments to be entered in accordance with the flow, i.e. the arguments should for instance be entered as if the return key is simulated. Is there someone with a suggestion?










share|improve this question


















  • 1





    Have you already looked at a SendKeys solution?

    – vonPryz
    Nov 27 '18 at 6:54














0












0








0








I am trying to make a batch script that automates login in and out of Cisco Anyconnect. I noticed that Anyconnect comes with a CLI application which should make this easy to do. However, my issue is that the CLI app requires me to provide input over multiple session. The flow is the following:




  1. First I type connect example.com and hit enter. Here example.com is the server I wish to connect to.

  2. Then I insert my username and hit enter.

  3. Lastly, I insert my password and hit enter.


I have read guides on how to pass multiple arguments to a batch script, but it seems that I need to do something extra in order for the arguments to be entered in accordance with the flow, i.e. the arguments should for instance be entered as if the return key is simulated. Is there someone with a suggestion?










share|improve this question














I am trying to make a batch script that automates login in and out of Cisco Anyconnect. I noticed that Anyconnect comes with a CLI application which should make this easy to do. However, my issue is that the CLI app requires me to provide input over multiple session. The flow is the following:




  1. First I type connect example.com and hit enter. Here example.com is the server I wish to connect to.

  2. Then I insert my username and hit enter.

  3. Lastly, I insert my password and hit enter.


I have read guides on how to pass multiple arguments to a batch script, but it seems that I need to do something extra in order for the arguments to be entered in accordance with the flow, i.e. the arguments should for instance be entered as if the return key is simulated. Is there someone with a suggestion?







powershell batch-file cmd






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 27 '18 at 6:30









misolsenmisolsen

32




32








  • 1





    Have you already looked at a SendKeys solution?

    – vonPryz
    Nov 27 '18 at 6:54














  • 1





    Have you already looked at a SendKeys solution?

    – vonPryz
    Nov 27 '18 at 6:54








1




1





Have you already looked at a SendKeys solution?

– vonPryz
Nov 27 '18 at 6:54





Have you already looked at a SendKeys solution?

– vonPryz
Nov 27 '18 at 6:54












2 Answers
2






active

oldest

votes


















1














in batch, the following might work or might not work - depends on how connect is programmed:



(echo username&echo password)|connect example.com


Note: be careful with spaces ((echo username & echo password) might look better, but adds a space to the username (possibly making it an invalid username).



If your password should contain any poison chars, you have to escape them. (% with another%: %%, all others (<>&|) with a caret (for example ^&)






share|improve this answer































    0














    If you know the inputs given interactively, you could try below in PowerShell.



    'first input','second input','third input' | executable.exe


    an example below.



    'list disk','select disk 0','list partition' | diskpart.exe





    share|improve this answer























      Your Answer






      StackExchange.ifUsing("editor", function () {
      StackExchange.using("externalEditor", function () {
      StackExchange.using("snippets", function () {
      StackExchange.snippets.init();
      });
      });
      }, "code-snippets");

      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "1"
      };
      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
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53493974%2fbatch-script-with-multiple-input-sessions%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









      1














      in batch, the following might work or might not work - depends on how connect is programmed:



      (echo username&echo password)|connect example.com


      Note: be careful with spaces ((echo username & echo password) might look better, but adds a space to the username (possibly making it an invalid username).



      If your password should contain any poison chars, you have to escape them. (% with another%: %%, all others (<>&|) with a caret (for example ^&)






      share|improve this answer




























        1














        in batch, the following might work or might not work - depends on how connect is programmed:



        (echo username&echo password)|connect example.com


        Note: be careful with spaces ((echo username & echo password) might look better, but adds a space to the username (possibly making it an invalid username).



        If your password should contain any poison chars, you have to escape them. (% with another%: %%, all others (<>&|) with a caret (for example ^&)






        share|improve this answer


























          1












          1








          1







          in batch, the following might work or might not work - depends on how connect is programmed:



          (echo username&echo password)|connect example.com


          Note: be careful with spaces ((echo username & echo password) might look better, but adds a space to the username (possibly making it an invalid username).



          If your password should contain any poison chars, you have to escape them. (% with another%: %%, all others (<>&|) with a caret (for example ^&)






          share|improve this answer













          in batch, the following might work or might not work - depends on how connect is programmed:



          (echo username&echo password)|connect example.com


          Note: be careful with spaces ((echo username & echo password) might look better, but adds a space to the username (possibly making it an invalid username).



          If your password should contain any poison chars, you have to escape them. (% with another%: %%, all others (<>&|) with a caret (for example ^&)







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 27 '18 at 9:00









          StephanStephan

          35.7k43256




          35.7k43256

























              0














              If you know the inputs given interactively, you could try below in PowerShell.



              'first input','second input','third input' | executable.exe


              an example below.



              'list disk','select disk 0','list partition' | diskpart.exe





              share|improve this answer




























                0














                If you know the inputs given interactively, you could try below in PowerShell.



                'first input','second input','third input' | executable.exe


                an example below.



                'list disk','select disk 0','list partition' | diskpart.exe





                share|improve this answer


























                  0












                  0








                  0







                  If you know the inputs given interactively, you could try below in PowerShell.



                  'first input','second input','third input' | executable.exe


                  an example below.



                  'list disk','select disk 0','list partition' | diskpart.exe





                  share|improve this answer













                  If you know the inputs given interactively, you could try below in PowerShell.



                  'first input','second input','third input' | executable.exe


                  an example below.



                  'list disk','select disk 0','list partition' | diskpart.exe






                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Nov 27 '18 at 6:51









                  Prasoon Karunan VPrasoon Karunan V

                  1,8572721




                  1,8572721






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Stack Overflow!


                      • 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%2fstackoverflow.com%2fquestions%2f53493974%2fbatch-script-with-multiple-input-sessions%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

                      A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

                      Calculate evaluation metrics using cross_val_predict sklearn

                      Insert data from modal to MySQL (multiple modal on website)