Ex1 &2 Commands and Shell
Ex1 &2 Commands and Shell
INTRODUCTION
An operating system is software that acts as an interface between the user and the
computer hardware. It is considered as the brain of the computer. It controls and co-ordinates the
internal activities of the computer and provides user interface.
(i)Hardware: This includes the physical components such as CPU, Keyboard, Hard disk
and Printer.
(ii) Application Software: These are the programs that are used to accomplish specific
tasks.
(iii)Operating System: It is the component or the set of programs to manage and control the
hardware as well as co-ordinate the applications. Each system must have at least
have the hardware and the OS.
Functions of an Operating System
Command interpretation: The CPU can’t understand the commands keyed in by a user.
It is the function of the OS to make it understand.
Peripheral Interfaces: The OS also has to take care of the devices attached to the
system. The OS oversees communication between these devices and the CPU.
Memory management: The OS handles the extremely important job of allocating
memory for various processes running on the system.
Process management: This is required if several programs must run concurrently. CPU
time would then have to be rationed out by the OS to ensure that no programs get more
than its fair share of the processor time.
Services of an OS:
1. Process Management
2. File Management
3. I/O Management
4. Scheduling
5. Security Management
FEATURES OF UNIX:
1. Multitasking
Multitasking is the capability of the OS to perform various tasks simultaneously. i.e. A single
user can run multiple programs concurrently.
2. Multiuser Capability
Multiuser capability allows several users to use the same computer to perform their tasks.
Several terminals are connected to a single powerful computer and each user can work with
their terminals.
3. Security
Unix allows sharing of data. Every user must have a Login name and a password. So, accessing
another user’s data is impossible without permission.
4. Portability
Unix is a portable because it is written in high level languages so it can run on different
computers.
5. Communication
Unix supports communication between different terminals connected to the Unix server and
also between the users of one computer to the users of another computer located elsewhere
in the network.
6. Programming Facility
UNIX is highly programmable; the UNIX shell programming language has the
conditional statements and control structures and variables.
UNIX ARCHITECTURE
The functioning of Unix OS is handled in 3 ways. The closest layer is the hardware,
which provides the services to the OS. The Unix OS referred to Unix as the kernel, is the heart
of the Unix. The other layer is the shell, which acts as the mediator that translates the
commands given by the application programs.
Kernel
It is the core of the OS. It controls all the tasks and carries out all the functions of an
OS such as memory and file management etc., and it keep track of the programs that are
executing. It also handles the information exchange between the terminals such as tape drives
and printers etc.,
Functions of Kernel
1. Allocating and deallocating memory to each and every process.
2. Receiving instructions from the shell and carrying them out.
3. Managing files that held on various storage devices.
4. Scheduling, Coordinating and assigning various input/output devices simultaneously.
5. Enforcing security measures.
6. Providing Network services.
7. Providing Utility services.
8. Coordinating each and every process with signal handling.
9. Providing administrative functions or utilities.
Shell
It is the command interpreter of the OS. The commands given from the user are
moved to the shell. The shell analyses and interprets these commands into the machine
understandable form. The commands can be either typed in through the command line or
contained in a file called shell script. Hence, Shell acts as an interface between the user
and the kernel.
UNIX has a variety of shells, they are:
(i) Bourne Shell: It is developed by Steve Bourne and it is the most popular shell and widely
used. This shell comes bundled with almost every UNIX system.
(ii) Korn shell: It is developed by David G.Korn. This is superset of Bourne shell and it has
more capabilities.
(iii) C Shell: It is developed by Bil Joy. It is similar to C Programming language.
Features of Shell
1. All communications between user and Kernel takes place through the shell.
2. It allows the tasks to run on background.
3. It also enables us to construct scripts like a programming language.
4. A group of files can be executed using a single command.
Logging
Each user has an identification called the user name is the login name which has to be
entered when the login: message appears. The user is then asked to enter the password. UNIX
keeps track of all the UNIX user names and the information about identity in a special file. If the
login name entered does not match with any of the user names it displays the login message
again. This ensures that, only authorized people use the system. When a valid user name is
entered at the terminal the dollar symbol is displayed on the screen this is the UNIX prompt.
Date:
Aim:
To perform operations using basic unix commands
Algorithm:
1.start the terminal
2.type the UNIX commands for specific operation
3.Execute the command.
4.close the terminal window
1. cat command
This command is used to create a file in unix.
Syntax:
$ cat >filename
2. ls command
It displays the list of files in the current working directory.
Syntax:
$ ls
3. rm command
This command is used to remove an existing file .
Syntax:
$ rm filename
4. wc commad
This command is used to count the number of lines characters & words in a file.
Syntax:
$ wc filename
5. pwd command
This command is used to know the current working directory.
Syntax:
$ pwd
6. date command
This command is used to display the current date ,year ,month ,day &time.
Syntax:
$ date
7. echo command
This command is used to print the message on the display .
Syntax:
$ echo text
8. cal command
This command is used to display the specified month or year calendar.
Syntax:
$ cal month
9. who command
This command is used to display the date & terminal type of all the users who are currently logged
into a system
Syntax:
$ who
11. bc command
This command is used to perform mathematical calculations.
Syntax:
$ bc operation
12. tputclear command
This command is used to clear the screen & place the $ prompt at the top most of the screen.
Syntax:
$ tput clear
17. cd command
It is used to change the current directory to the other directory specified.
Syntax:
$ cd jac
19. cp command
It is used to create duplicate copies of ordinary files.
Syntax:
$ cp source destination
21. mv command
It is used to rename and move ordinary and directory files. To do this we need both execute and
write permissions.
Syntax:
$mv source destination
Ex:
Renaming, $ mv aaa bbb
To move the contents of the file old to the new, the syntax is: Ex: $ mv old new
The above cat command will concatenate the two files (file1.txt and file2.txt) and it will display
the output in the screen.
Syntax:
cat file1.txt file2.txt
Some times the output may not fit the monitor screen. In such situation you can print those files
in a new file or display the file using less command.
Syntax:
cat file1.txt file2.txt | less
cat file1.txt file2.txt > file3.txt
In the above example the output is redirected to new file file3.txt. The cat command will create
new file file3.txt and store the concatenated output into file3.txt.
Syntax:
passwd tech
30. Display all files, sub directories and files in subdirectories including their sizes
Syntax:
du –sk * | sort -n
31. Store the output of date command in a file called date. out
Syntax:
date >> date.out
32. To display the file attributes
Syntax:
stat filename
33. Change the mode of the file, where the changed file should possess all the permission
Syntax:
chmod 777
34. List all files in current directory whose second character is a digit
Syntax:
find ./ -type f -name ' ?[0-9]*'
Result:
Thus the various UNIX commands are executed successfully
Ex.No:2(a) STUDY OF VI EDITOR AND BASIC SHELL COMMANDS
Date:
An editor is program that allows to see a portion of a file on the screen and to modify
characters and lines by simply typing at the cursor position. There are number of editors that
may be included with the UNIX system, including ED, EX, VI and EMACS.
The vi Editor
VI is a full screen editor and is widely acknowledged as one of the most powerful editors
available .It is a full screen editor that allows the user to view and edit the entire document at
the same time.
The VI editor was written in the University of California at Berkeley by Bill Joy,
who is one of the co-founder of Sun Microsystems.
Features of VI Editor
1. It is very easy to learn and has more powerful and exciting features.
2. It works in great speed.
3. VI is case sensitive.
4. VI has powerful undo features than most other word processors, but it has no formatting
features.
Modes of VI Editor
VI editor works in three modes of operations specified below:
Command Mode: In this mode, all the keys pressed by the user are interpreted to be editor
commands. No text is displayed on the screen, even if corresponding key is pressed on
keyboard.
Insert Mode: This mode permits to insert new text, editing and replacement of existing text.
Once VI editor is in the insert mode, letters typed in the keyboard are echoed on the screen.
The ex or escape colon ( : ) Mode: This mode allow us to give commands at the command
line. The bottom line of the VI editor is called the command line.vi uses the command line to
display messages and commands.
Syntax: vi filename
Command Action
K or - Up one line
T[character] Moves right and places it one character before the specified
character
To add text at the end of the file, position the cursor at the last character of the file.
Inserting text in the middle of the file is possible by pressing „i‟. The editor accepts
and inserts the typed character until Esc key is pressed.
Deleting Text
For deleting a character, move the cursor to the character, press „x‟. The character
will disappear.
Command Purpose
D$ or d Deletes a line from the cursor position to the end of the line
#dw Deletes the word from the cursor position to the end of the word
Starting vi
Command Description
vi file start at line 1 of file
vi +n file start at line n of file
vi + file start at last line of file
Inserting text
Keys pressed Text inserted
a after the cursor
A after last character on the line
i before the cursor
I before first character on the line
o open line below current line
O open line above current line
The format for the various conditional statements and looping statements and the
relational operators used for those conditions are given below.
if condition
if condition then
execute commands
fi
if – else condition
if condition then
execute commands
else
execute commands
fi
if condition then
execute commands elif condition
then
execute commands
else
execute commands
fi
Relational Operators
Operator Meaning
-eq Equal to
-ne Not equal to
case expression in
pattern1) execute commands ;;
pattern2) execute commands ;;
pattern3) execute commands ;;
……………..
esac while looping
WHILE
While expression Do
execute commands
done
UNTIL
while’s complement until [ condition ]
FOR looping
SHELL PROGRAMMING
Ex.No: 2b SUM AND AVERAGE OF 4 INTEGERS
Date:
Aim:
To write a shell program for finding the sum and average of 4 integers.
Algorithm:
OUTPUT:
Maximum Mark obtained
Enter four integers
10 mark
20 Aim 10
30 Algorithm& Program 40
40
Execution 30
Sum=100
Average=25 Result 10
Viva 10
Total 100
Result: Thus shell program for finding sum and average of 4 integers has been executed
successfully.
To write a shell program for computing simple interest and compound interest.
Algorithm:
OUTPUT:
Result: Thus shell program for finding simple interest and compound interest has been
executed successfully.
Date:
Aim:
OUTPUT:
Enter a
10
Enter b
20
After swapping
20
10
Result: Thus shell program for swapping two numbers has been executed successfully.
Date:
Aim:
Algorithm:
OUTPUT:
Enter number
5
Enter power
2
Result is:
25
Result: Thus shell program for computing the power of x has been executed successfully.
Date:
Aim:
To write a shell program for checking whether year is leap year or not.
Algorithm:
read y
a=`expr $y % 4`
b=`expr $y % 100`
c=`expr $y % 400`
then
else
echo "$y is not a leap year "
fi
OUTPUT:
Enter a year:
2000
Year is leap year
Result: Thus shell program for checking whether year is leap year or not has been executed
successfully.
Date:
Aim:
To write a shell program for checking whether given number is odd or even.
Algorithm:
Enter a number
5
5 is Odd
Result: Thus shell program for checking whether given number is odd or even has been
executed successfully.
Date:
Aim:
To write a shell program for checking whether given number is positive or negative.
Algorithm:
OUTPUT:
Enter a number
2
2 is Positive
Result: Thus shell program for checking whether the given number is positive or negative has
been executed successfully.
Date:
Aim:
To write a shell program for finding the quotient and remainder of two numbers.
Algorithm:
OUTPUT:
Enter a number
77
Enter divisor
5
Quotient is: 15
Remainder is: 2
Result: Thus shell program for finding the quotient and remainder of two numbers has been
executed successfully.