Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
21 views

06 OS06 Shell Scripting LAB

td of operating system

Uploaded by

gjgknczfxj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

06 OS06 Shell Scripting LAB

td of operating system

Uploaded by

gjgknczfxj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Course: Operating Systems Date: 30/09/2024

Lab: Shell Scripting

1. What is a Shell?

 A shell is a command-line interface (CLI) that provides a way for users to interact with the operating
system.
 Shell is a program that takes your commands (text-based) and sends them to the operating system
to execute.
 Examples of shells include Bourne Shell (sh), Bash (Bourne-Again Shell), rbash, dash

2. Which shells does my system support?

 Cat /etc/shells
 Write the output

3. Where bash is located?

 which bash
 Write the output

4. On the command line interface, what is the current working directory of your system?

 pwd
 Write the output

5. Navigate to the current user directory and create a new directory called ‘ostasks’ and change the
directory to ostasks

 cd /home/{user name}
 mkdir ostasks
 cd ostasks

Page 1 of 6
6. Create a new file with .sh extension named ‘firstprogram’

 touch {file name}.sh


 open this file in any editor for example gedit, nano, vim and display the following message “Hello”
 Execute the file and see the output

7. Give the executable permissions to the ‘firstprogram.sh’ file

 chmod +x {file name}.extension

8. Edit the same file and write a command that first saves the current date and time of the system and
then displays it.

#!/bin/bash

echo “hello”
current_datetime=$(date)
echo “Current Date and Time: $current_datetime”

9. To write a comment in a shell script use ‘#” hash symbol before the comment

 # this is a comment

10. Two types of variables

a) System Variables (Upper case letters)


b) User defined Variable (lower case letters)
# Following are some system variable examples

echo “$BASH” #displays the name of the shell


echo “$BASH_VERSION” #displays the version of bash
echo “$HOME” #displays the home directory
echo “$PWD” #displays the current working directory

# User define variable

temp=10
echo “the value of temp = $temp”

11. Identify the name of user defined variable in section 8? [Reply: ]

12. How to read inputs from the terminal?

#! /bin/bash

echo “Enter name: ”


read name
echo “Entered name: $name”

Page 2 of 6
# how to read from the same line

read –p “username: “ username_val


# -p flag is use to get the input from the same line
read –sp “password: “ password_val
# -s flag is use to silently enter the password
echo “username : $username_val”
echo “password: $password_val”

13. Arrays

# reading the inputs and saving in arrays

echo “enter names: “


read –a names # -a flag is use to read inputs as arrays
echo “names: ${name[0]}, ${name[1]}”

14. If statement in bash script


#!/bin/bash

if [ condition ]
then
statement
fi

integer comparison operators

-eq is equal to if [ “$a” –eq “$b” ]


-ne is not equal to if [ “$a” –ne “$b” ]
-gt is greater than if [ “$a” –gt “$b” ]
-ge is greater than or equal to if [ “$a” –ge “$b” ]
-lt is less than if [ “$a” –lt “$b” ]
-le is less than or equal to if [ “$a” –le “$b” ]
< is less than if ((“$a” < “$b”))
<= is less than or equal to if ((“$a” <= “$b”))
> is greater than if ((“$a” > “$b”))
>= is greater than or equal to if ((“$a” >= “$b”))

string comparison operators

= is equal to if [ “$a” = “$b” ]


== is equal to if [ “$a” == “$b” ]
!= is not equal to if [ “$a” != “$b” ]
< is less than, in ASCII alphabet order if [[ “$a” < “$b” ] ]
> is greater than, in ASCII alphabet order If [ [ “$a” > “$b” ]]
-z string is null, zero length If [ -z “$string”]

Page 3 of 6
# comparing the two strings

word=”school”
if [ “$word” = “school”]
then
echo “condition is true”
fi

15. if else statement in bash


if [ condition ]
then
statement
else
statement
fi

16. if, elif, else statement in bash


if [ condition ]
then
statement
elif [ condition ]
then
statement
else
statement
fi

17. Logical AND, OR operator


if [ condition ] && [ condition ] # logical AND
then
statement
fi

if [ condition –a condition ] # logical AND


then
statement
fi

if [[ condition && condition ]] # logical AND


then
statement
fi

Page 4 of 6
if [ condition ] || [ condition ] # logical OR
then
statement
fi

if [ condition -o condition ] # logical OR


then
statement
fi

if [[ condition || condition ]] # logical OR


then
statement
fi

18. while loop in bash scripting


while [ condition ]
do
command 1
command 2
done

# for example the following while loop prints the values up to 10

n=1
while [ $n –le 10 ] OR (( $n <= 10 ))
do
echo “$n”
n=$(( n+1 ))OR (( n++ ))
done

19. for loop in bash scripting

for (( initialization; test condition; loop counter ))


do
command 1
command 2
done

Page 5 of 6
Task 1: Run the following command and explain its purpose. 'lshw'. If the command doesn't work, try to find

the solution.

Task 2: Write a bash script that finds the first 500 prime numbers.

Task 3: Write a bash script that displays the number of cores of your machine.

Task 4: By default, on your system, all cores are online. Online core means that the core is active. Find the

command that tells the status of the core.

Task 5: The system's cores are numbered from 0 to n. Find which is the default core of your system.

Task 6: Write a bash script using a for loop that disables or offline all the cores except the default core.

Task 7: Write a bash script using a for loop that enables or online all the cores except the default core.

Task 8: Write a bash script that reads the names of five files and creates five text files in the current working

directory.

Task 9: Write a bash script that deletes the files (created in task 7).

Task 10: Write a bash script that reads the integer input' n' from the keyboard. It displays the current date

and time system 'n' times with a delay of 2 seconds.

Task 11: Write a bash script that reads the two strings from the keyboard and compares them for equality.

Page 6 of 6

You might also like