Shell Scripting Interview Questions | Top 95 Shell Scriptiong IQ

shell scripting interview questions
  1. Introduction to Shell Scripting
  2. Profession Development
  3. Why Linux Shell Scripting?
  4. Every day use Examples of Shell scripting by System Admins
  5. Shell Scripting interview questions and solutions 

Introduction to Shell Scripting

The pc solely is aware of binary language. Earlier, packages had been written in binary language, and never in a human-readable format. It was very tough to learn and write code. Individuals began creating kernels and related issues equivalent to compiler, interpreter, editor, which had been the core a part of the working system. A compiler used to grasp the human-readable format of a particular program after which convert it into machine code. After that, many programming languages got here into existence. Now, in line with Wikipedia, there are greater than 600 programming languages accessible on this planet.

The primary shell developed by Ken Thompson for UNIX in 1971. In 1977, Bourne shell was created by Stephen Bourne at bell labs for UNIX. It’s a helpful shell at the moment. In some Linux techniques, it’s a default shell. Tenex C shell Korn shell, the Bourne-again shell, unique shell are the several types of shell. By this weblog, we’ll study the highest shell scripting interview questions and solutions.

Profession progress 

There are a number of alternatives from many reputed firms on this planet. In accordance with analysis, Linux Shell Scripting has a market share of about 17. Since 2018, Linux has began to develop its market quickly. In accordance with PayScale, the typical wage for shell scripting talent is $81,951. If you need profession progress in DevOps, System administrator, studying shell scripting interview questions can be a terrific begin.

Why Linux Shell Scripting?

Shell scripting makes work straightforward and reduces time. You are able to do virtually something by writing a script and automating your job. You may handle a number of techniques and servers at a time utilizing shell scripting. There are a number of benefits of shell scripting, like automating your every day duties by writing a number of phrases or scripts. It combines a number of instructions in a single command, and it’s straightforward to jot down when in comparison with different programming languages. Earlier than we transfer on to the shell scripting interview questions, allow us to take a look at some examples.

Every day use Examples of Shell scripting by System Admins

  • Monitoring your Linux system.
  • Knowledge backup and creating snapshots.
  • Dumping Oracle or MySQL database for backup.
  • Creating e-mail based mostly alert techniques.
  • Discover out what processes are consuming up your system assets.
  • Discover out accessible and free reminiscence.
  • Discover out all logged in customers and what they’re doing.
  • Discover out if all mandatory community companies are operating or not. For instance if the online server failed then ship an alert to the system administrator by way of a pager or an e-mail.
  • Discover out all failed login makes an attempt, if login makes an attempt are continued repeatedly from the identical community IP robotically block all these IPs accessing your community/service by way of firewall.
  • Consumer administration as per your personal safety insurance policies.
  • Discover out details about native or distant servers.
  • Server configuration.

Shell Scripting Interview Questions

1. What’s Linux?

It’s a household of open-source Unix working techniques based mostly on the Linux kernel. 

2. Distinction between Linux and Unix?

Linux is a clone of UnixLinux default shell is BASH (Bourne Once more Shell) whereas the Unix shell is Bourne Shell.

three. What’s a kernel?

The kernel is a pc program on the core of a pc’s working system that manages operations of laptop and . 

four. What’s an interpreter?

Interpreter interprets this system line by line into machine code.

5. What’s a compiler ?

Compiler scans the entire program and converts it into machine code.

6. What’s a shell?

Shell is a program and command line interpreter. It’s an interface between consumer and kernel.

7. What’s CLI and GUI?

CLI is a command line interface. This consumer interface permits the consumer to offer instructions to work together with the system.

GUI is a graphical consumer interface. This consumer interface permits customers to work together with gadgets with the assistance of graphical icons and visible indicators.

eight. Why would we use CLI over GUI?

  • CLI provides higher management to the consumer. 
  • CLI is a finest  choice for professionals who work on extra programming languages.
  • It  required much less reminiscence as in comparison with GUI. 
  • The velocity of the CLI is quicker than GUI.

9. What’s shell scripting?

It’s a textual content file which comprises listing or sequence of command or statements to be executed

10. What’s the default login shell? Methods to change it?

/bin/bash is the default login shell. Utilizing the command  “chsh” we will change the default shell.

11. What’s the significance of shell scripting?

  • If you have to carry out the identical job repeatedly, you must use shell scripting 
  • Through the use of shell scripting, you can also make your personal instruments 
  • It is rather helpful for a system admin to automate every day duties

12. What are the assorted levels of the Linux course of?

  • Ready: The method waits for assets
  • Operating: The method is presently being  executed
  • Cease: The linux course of cease after execution
  • Zombie: The method has stopped however it’s nonetheless energetic in course of desk

13. What’s the important distinction between BASH and DOS?

BASH instructions are case delicate however DOS instructions are usually not case delicate.

14. What are the elements of  Linux ?

Kernels, shells, GUI, system utilities and software packages  are elements of Linux.

15. What’s a root consumer?

It’s an admin consumer that permits you full management of your system.

16. What are the environmental variables?

Environmental variable management shell perform in addition to different Linux packages.

17. What’s LILO?

LILO is a boot loader utilized in Linux .It’s used to load the working system into important reminiscence to start out its operation.

18. What are the several types of generally used shells on a Linux system?

  • Bash/Bourne Once more Shell: That is the commonest shell accessible on all Linux and based mostly techniques. It’s open supply and freeware.
  • CSH or C Shell: This Shell scripting program makes use of the C programming’s shell syntax and it’s virtually just like C.
  • KSH or Korn Shell: Korn is a Unix based mostly Shell scripting program, initially based mostly on the Bash Shell Scripting. This shell is kind of superior and it’s a excessive stage programming language.
  • TCSH: There is no such thing as a particular full type of TCSH. It’s as it’s. TCSH is a sophisticated model of Berkeley Unix C shell. It once more helps C fashion syntax.

19. Which command is used to execute a shell file?

First Set execute permission in your script utilizing chmod command
chmod +x

To run your script:
One other choice to execute shell script:

20. Title of Editors which can be found in virtually all UNIX?


21. What’s interactive and non-interactive shell?

/bin/bash and /bin/sh is interactive shell 

/sbin/nologin shell is non-interactive shell

22. What’s the absolute and relative path?

Absolute path is the total path of the listing. It at all times begins with “/” .

eg.  cd  /var/tmp/abrt/

Relative path is important from present location to achieve explicit listing doesn’t begin with “/”.

eg. cd .. ,   cd –

23. Methods to create, learn and delete recordsdata?

contact command is used for creating recordsdata.  eg. #contact filename 

cat command is used for studying recordsdata.     eg.  #cat filename

rm command is used  for delete a file    eg. #rm –f  filename 

24. Methods to create and delete a listing ?

mkdir command is used for making a listing.  Eg.  # mkdir filename

rmdir command is used for take away listing  eg.   #rmdir filename 

25. Methods to create a number of textual content recordsdata and directories?

To  create a number of textual content file contact file identify command is used 

 eg. suppose we wish create four recordsdata then we kind #contact filename

To create a number of listing mkdir filename command is used

eg. suppose we wish to create four listing  then we kind mkdir filename

26. What’s using head and inform command?

Head command is used for show began 10 strains

Tail command is used for show began 10 strains

27. Methods to discover the present shell which you might be utilizing?

$echo $SHELL command is used for discover present shell

28. Methods to discover an accessible shell in your system?

Cat /and so forth/shells command is used to seek out accessible shells in your system.

29. Methods to create shortcuts in Linux?

To create shortcut “hyperlink” command use. There are two kinds of hyperlink: arduous hyperlink and delicate hyperlink.

30. Inform me the distinction between arduous hyperlink and delicate hyperlink?

Deleting the unique file doesn’t have an effect on the arduous hyperlink however Deleting the unique file makes the delicate hyperlink inactive.

31. How will you go and entry arguments to a script in Linux?

For go arguments in script “scriptname arg1 arg2 arg3 …” 

For entry arguments in script may be accessed contained in the script as “$1 , $2 .. $n”

32. What’s the significance of $#?

It represents the full variety of arguments handed by string.

33. What’s the distinction between $* and $@?

$* take into account your entire set of positional parameters as a single string however  $@ deal with every quoted argument as a separate argument.

34. Clarify “s” permission bit in a file? 

“s” bit additionally known as “set consumer id”(SUID) bit. “s” on file causes the method to have the privileges of the proprietor of the file through the occasion of this system.

35. What are the several types of variables utilized in Shell Script?

System outlined variable : system outlined variable created by os itself. These variables are usually outlined in capital letters. It may be considered by the “set” command.

Consumer outlined variable : it created by system customers. Worth of variable may be view by utilizing “echo $variablename” command.

36. What’s the distinction between = and ==?

=  use for assign worth to variable

== use for string comparability

37. What’s using a pipe operator? Methods to execute a number of instructions in a single line?

The pipe operator is used for one after the other execution of command however instructions shouldn’t be depending on one another.

38. What are the totally different modes of vi editors?

Command mode : it is a mode the place you begin

Edit mode : this mode means that you can do subsequent enhancing.

Ex mode : On this mode you work together with vi with instruction to course of

39. What’s redirection?

Redirection is the method of path information from one output to a different.

40. Methods to discover the standing of the method?

Ps ux command consumer for discover standing of course of.

41. Methods to verify reminiscence standing?

Free command is beneficial for checking reminiscence standing.

42. Methods to debug a shell script?

To debug a shell script we execute the script with the “-x” or “-nv”  choice.

43. Which command is used for evaluating the string within the shell script?

To match the string “take a look at” command is used.

44. What’s the distinction between $! And $$?

$! Exhibits course of id of the method that lately went into background 

$$  provides the method id of the presently executing course of

45. Which command is used to seek out all info of the consumer?

“finger” command exhibits all info of customers.

46. Which 4 elementary elements of each file system?

Boot block: it comprises a small program known as MBR which masses the kernel throughout system boot up.

Tremendous block: tremendous block comprises all details about the file system.

Inode block: it comprises inode for each file of the file system.

47. What’s the Crontab?

Crontab stands for cron desk as a result of it makes use of the job scheduler cron to execute duties. The crontab is an inventory of instructions that you just wish to run on an everyday schedule, and likewise the identify of the command used to handle that listing. 

48. What number of fields are current in a crontab file?

The 5 fields include info on when to execute the command .

  • minute(Zero-59)
  • hour(Zero-23)
  • day(1-31) 
  • month(1-12)
  • day of the week(Zero-6, Sunday = Zero).

49. What are the 2 recordsdata of crontab command?

cron.enable which decides the customers must be permitted for utilizing the crontab command.

cron.deny which decides the customers must be prevented from utilizing the crontab command

50. What are the totally different instructions accessible to verify the disk utilization?

  • df: It’s used to verify the free disk house.
  • du: It’s used to verify the listing sensible disk utilization.
  • dfspace: It’s used to verify the free disk house by way of MB.

51.  Methods to open a read-only file within the Shell?

vi –R <Filename>

52. Methods to learn the way lengthy the system has been operating? 

 by utilizing the command “uptime”.

53. How to hook up with a distant server and execute some instructions?

We will use ssh to do that: 

ssh username@serverIP -p sshport 

As soon as the above command is executed, enter the password.

54. How to hook up with a database server from Linux? 

mysql –S serverName –U username –P password 

55. How can I set the default permission to all customers on each file which is created within the present shell? 

umask 777

56.  How will I insert a line “ABCD” at each 50th line of a file? 

sed  ’50iABCD’ filename 

57. Methods to discover the full disk house utilized by a particular consumer? 

du -s /residence/username 

58. Methods to print the login names of all customers on a system? 

/and so forth/shadow file has all of the customers listed. 

awk –F ‘:’ ‘print $1’ /and so forth/shadow|uniq –u

59.  Write a shell script to get present date, time, username and present working listing.

echo “Hey, $LOGNAME”
echo “Immediately’s date is `date`”
echo “Username is `who i’m`”
echo “Present listing is `pwd`”

60. Methods to verify if a listing exists?

if [ -d $mydir ]
echo "Listing exists"

61. Clarify the file permissions.

r – learn          four

w- write         2

e- execute      1

62. Given a file, change all prevalence of phrase “ABC” with “DEF” from 10th line until finish in solely these strains that comprises phrase “MNO” 

 sed –n ’10,$p’ file1|sed ‘/MNO/s/ABC/DEF/’

63. How will you discover the 19th line of a file utilizing solely tail and head command? 

 tail +19 file1|head -1 

64. Methods to Use the sed command to exchange the content material of the file?

if cat fille
Then O/p must be 

sed '1! G; h;$!d' file1

65.  I wish to create a listing such that anybody within the group can create a file and entry any individual’s file in it however none ought to be capable to delete a file apart from the one created by himself. 

We will create the listing giving learn and execute entry to everybody within the group and setting its sticky bit “t” on as follows: 

mkdir direc1

chmod g+wx direc1

chmod +t direc1

66. Methods to get the third aspect/column from every line from a file?

awk ‘’ $1

67. Write down the Syntax for all of the loops in Shell Scripting.

For Loop:

for var in word1 word2 … wordn


Assertion(s) to be executed for each phrase.


Whereas Loop:

whereas command


Assertion(s) to be executed if command is true


Till Loop:

till command


Assertion(s) to be executed till command is true


68. Methods to go arguments to a script?

./script argument  used for handed argument to a script.


./  file.txt
Cat $1

69. Methods to use arguments within the script?

Within the script we use first argument as $1 and second argument as $2 

Instance: to maneuver file one vacation spot($1) to a different($2)

./ file.txt /textual content
mv $1 $2

70. Methods to get 5rd aspect from every line from the file?

awk ‘print $5’

71. find out how to discover course of identify from course of ID?

“ps –p pid” command used to seek out the method identify.

72. Methods to create alias command in shell?

Alias identify=”command whose alias to be created”

73 . What’s the c and b permission area of the file?

C specifies whether or not the file is character particular file or block particular file.

74. Methods to get 5rd aspect from every line from the file?

awk ‘print $5’

75. Methods to discover course of identify from course of id?

“ps –p pid” command used to seek out the method identify.

76. What’s using a shebang line?

Shebang line on the prime of every script determines the placement of the engine which is for use with a view to execute the script.

77. Methods to add two strings?

S1=”whats up”
Let s3=$s1+$s2
Echo $s3

78. Methods to add two integers?

Echo $int3

79. Write a script to verify if a file exists on the system?

If [-f /var/www/html]
Echo “file exists”

80. Why #!/bin/sh or #!/bin/bash at the start of each script?

That line tells which shell to make use of. 

81. From given file identify discover the rely of strains containing phrase  “ABC”

grep –c “ABC” filename

82. What can be the output of command: echo $


83. find out how to print all array indexes?

echo $!array[@] used to print all array indexes.

84. Methods to take away parts from an array with id three?

Unset array[3]

85. Write a script to check numbers?

If [ $x –gt $y ]
Echo “ x is bigger than y”
Echo “y is bigger than x”

86. What are the kinds of permission on the file stage in Shell?

Proprietor permissions: The permissions granted to a consumer with all of the rights on the root stage.

Group permissions: The permissions granted to a consumer with all of the rights in a selected group.

Different  permissions: The permissions granted to a consumer with all of the rights globally to a file.

87. How  to make use of feedback in shell scripting?

#! /bin/bash
# addition

88. Methods to use multi-line feedback in shell scripting?

#! /bin/bash
: ‘
This script calculates squares of eight.
echo $space

89. Write a script that obtain enter from consumer.

#! /bin/bash
Echo  –n  “enter enter:”
learn enter
echo “ you entered: $enter”

90. Write a script utilizing the AND operator.

#! /bin/bash
Echo –n “enter quantity:”
learn quantity
if  [[ ($number  –lt 10 )  &amp;&amp; ($number%2  –eq  0)]]
echo  “even quantity”
echo “odd quantity”

91. Write an instance of OR operator.

#! /bin/bash
Echo –n “enter any quantity : “
learn n
if  [[ ( $n –eq 10 || $n  -eq 45) ]]
echo “ you win”

else  “ you misplaced!”
instance of elif 
#! /bin/bash
Echo –n “enter quantity :”
learn quantity 
if  [[ $number  -gt 10]]
echo “quantity  is bigger than 10”
elif  [[ $num –eq 10 ]]
echo ‘quantity is the same as 10”
echo “ quantity  is lower than 10”

92. Write a script for including a number of values.

 #! /bin/bash
For (( counter=1 ; counter<5 ;counter++))
Echo –n “enter your quantity”
learn n
(( sum+=n))
#echo –n “$counter”
Printf   “n”
echo  “result's : $ sum”

93. Write an instance of a perform.

#! /bin/bash 
Perform Add()


94. Methods to ship mail utilizing shell script?

#! /bin/bash
Message=”this mail ship by script”
‘mail –s $topic $recipient <<< $message’

95. Write script to print present date and time.

#! /bin/bash
12 months= ‘date +%Y’
month=’date  +%m’
day=’date +%d’
hour=’date +% H’
minute=’date +%M’
second=’date +%S’
echo ‘date’
echo  “present date is :$day-$month=$12 months”
echo  “present time is :$hour:$minute:$second”

This brings us to the top of the weblog on shell scripting interview questions. We hope that you just had been in a position to profit from this weblog on shell scripting interview questions and are actually better-equipped to attend your upcoming interviews.

In case you want to upskill on this area and study extra ideas, try the assorted Free On-line Programs provided by Nice Studying Academy.



Leave a Comment