Skip to main content

Shell programming

    Usually shells are interactive that mean, they accept command as input from users and execute them. However some time we want to execute a bunch of commands routinely, so we have type in all commands each time in terminal.
    As shell can also take commands as input from file we can write these commands in a file and can execute them in shell to avoid this repetitive work. These files are called Shell Scripts or Shell Programs. Shell scripts are similar to the batch file in MS-DOS. Each shell script is saved with .sh file extension eg. myscript.sh

    A shell script have syntax just like any other programming language. If you have any prior experience with any programming language like Python, C/C++ etc. it would be very easy to get started with it.
    A shell script comprises following elements –

    • Shell Keywords – if, else, break etc.
    • Shell commands – cd, ls, echo, pwd, touch etc.
    • Functions
    • Control flow – if..then..else, case and shell loops etc.

    Why do we need shell scripts

    There are many reasons to write shell scripts –

    • To avoid repetitive work and automation
    • System admins use shell scripting for routine backups
    • System monitoring
    • Adding new functionality to the shell etc.

    Advantages of shell scripts

    • The command and syntax are exactly the same as those directly entered in command line, so programmer do not need to switch to entirely different syntax
    • Writing shell scripts are much quicker
    • Quick start
    • Interactive debugging etc.
Program 1:
Write program to find sum of two numbers
echo "Enter two numbers"
read num1 num2
sum = 'expr $num1 + $num2'
echo "The sum is = $sum"
Program 2:
shell program to multiply two numbers using expr
num1=10
num2=20

ans=`expr $num1 \* $num2`

echo $ans

Output

200

Comments

Popular posts from this blog

Shell scripting

What is a Shell? An Operating is made of many components, but its two prime components are - Kernel Shell A Kernel is at the nucleus of a computer. It makes the communication between the hardware and software possible. While the Kernel is the innermost part of an operating system, a shell is the outermost one. A shell in a Linux operating system takes input from you in the form of commands, processes it, and then gives an output. It is the interface through which a user works on the programs, commands, and scripts. A shell is accessed by a terminal which runs it.

Linux Commands

File Commands:-- 1. ls: Directory listing 2. ls -al: Formatted listing with hidden files 3. ls -lt :Sorting the Formatted listing by time modification 4. cd dir: Change directory to dir 5. cd: Change to home directory 6. pwd: Show current working directory 7. mkdir dir: Creating a directory dir 8. cat >file: Places the standard input into the file 9. more file: Output the contents of the file 10. head file: Output the first 10 lines of the file 11. tail file: Output the last 10 lines of the file 12. tail -f file: Output the contents of file as it grows,starting with the last 10 lines 13. touch file: Create or update file 14. rm file: Deleting the file 15. rm -r dir: Deleting the directory 16. rm -f file: Force to remove the file 17. rm -rf dir: Force to remove the directory dir 18. cp file1 file2: Copy the contents of file1 to file2 19. cp -r dir1 dir2: Copy dir1 to dir2;create dir2 if not present 20. mv file1 file2: Rename or move file1 to file2,if file2 is an existing directory 21...