Scripting Classroomnotes 29/Oct/2022

Scripting

  • Any scripting is sequence of instructions.
  • In Linux instruction is a command & in Powershell the instruction is also command but called as Cmd-Let
  • Scripts are created for two possible ways of execution
    • interactive scripts:
      • to simplify the execution of complex problems/installations/configurations
    • non-interactive scripts:
      • to automate certain activity.
  • Lets try to setup dev environment for shell and powershell scripts.

Developer Environment

  • Windows
    • Ensure Visual studio code is installed
    • Ensure Git Bash is installed
  • Mac:

    • Ensure Visual Studio code is installed.
  • Shell script has an extension of .sh
  • Powershell scripts have an extension of .ps1
  • Ensure Powershell extension is installed.
    Preview
  • Ensure bashdebug is installed
    Preview
  • To run the scripts:
    • ps1: run them from powershell
      • cd in to the folder
      • execute .\<filename>.ps1
    • sh: run the gitbash or mac terminal
      • cd in to the folder
      • execute bash ./<filename>.sh

Debugging

  • IDE based Debugging:
    • Breakpoint: The line or instruction where the control is handed over to us.
    • Step Over: Execute the current instruction or line.
    • Powershell: Debugging is possible by installing Powershell extension
    • Shell Scripting: We need to do little more work to get the things in place.

Exit Codes in Linux

  • Every Linux command returns a code
    • Zero: Command exectuion is success
    • Non-Zero: Command execution is failed
  • To find the last return code use the following expression $?
  • Refer Here for the bash cheatsheet.

Combining multiple Linux commands in one line

  • Commands can be combined by using semi-colon ; and ampersand &&
    • ;: All the commands will be executed irrespective of errors
      Preview
    • &&: All the commands will be executed if there are no errors. From the moment a command returns an error code the subsequent commands will not be executed
      Preview

Note

  • PS script
echo hello
echo 1
echo 2
  • shell script
echo hello
echo 1
echo 2
  • python script

def printargs(a,b):
    print(f"values passed are {a}, {b}")

def add(a, b):
    printargs(a,b)
    return a+b


if __name__ == '__main__':
    result = add(3, 5)
    print(result)
    result = add(5, 8)
    print(result)

Published
Categorized as Uncategorized Tagged

By continuous learner

devops & cloud enthusiastic learner

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Please turn AdBlock off
Animated Social Media Icons by Acurax Responsive Web Designing Company

Discover more from Direct DevOps from Quality Thought

Subscribe now to keep reading and get access to the full archive.

Continue reading

Visit Us On FacebookVisit Us On LinkedinVisit Us On Youtube