Monday, January 23, 2023

Top 20 Shell Scripting Interview Questions and Answers

Have you struggle with Shell Scripting interview questions before? Have you been having problems in finding out the kind of questions asked in a Shell Scripting interview? If you have experienced this then it is high time that you find a solution. You cannot lose that dream job anymore and yet you can find with ease all you require to pass your interview. If that interview is a few days away, worry no more because you will get before that panel fully prepared and ready for the day by going through these common shell scripting questions. 

If you are preparing for any Developer or DevOps Engineer interview then you should prepare Linux questions as well as Shell Scripting questions. Shell scripting is one of the desired skill especially for IT support, Developers, and DevOps Engineers role as they help to automate mundane task and that's why you will always find a couple of questions on shell scripting on Interviews. 

Earlier, I have shared best Shell Scripting courses and best Linux courses and in this article, I am going to share common Shell Scripting questions for practice. You can go through them before your interview to get yourself familiar with essential Shell Scripting concepts. 


Top 20 Shell Scripting Interview Questions With Answers

This article has provided all you need to pass your interview. Take a look at the following top 20 Shell Scripting interview questions with answers.


1. What is a shell?
Answer: Shell is an interface between the user and the kernel. Even though there can be only one kernel; a system can have many shells running simultaneously.


2. What is the difference between $$ and $!?
Answer: $$ gives the process id of the currently executing process whereas $! Shows the process id of the process that recently went into the background.


3. What is a superblock in shell scripting?
Answer: A superblock is a program containing specific file systems' records. The characteristics available in the block are size, counts of filled and empty blocks, usage information, size of block groups, and location and size of inode tables.

Top 20 Shell Scripting Interview Questions and Answers


4. What are the advantages of Shell Scripting?
Answer:

  • An interactive debugging tool, as well as a quick start.
  • Programmers need not change their syntax since both command and syntax are identical to those entered directly into the command line.
  • Shell scripts are easy to use and quicker to write.
  • It helps automate administrative tasks, so it is time-saving.
  • As shell scripts are written in an interpreted language, they can be run without any additional effort on almost any modern operating system, including UNIX, Linux, BSD, and Mac OS X.
  • They can be utilized for bulk execution rather than single instructions.
  • Using it, you can develop your own custom operating system with relevant features.
  • Software applications can be developed according to their respective platforms with this tool.


5. What are the disadvantages of Shell Scripting?
Answer: it has the following disadvantages:

  • The process is slow initially and improves gradually
  • Portability is not easy
  • Typing errors can partition as well as delete entire data
  • Weak designs can prove to be costly and can destroy the whole process.


6. What are the Control instructions?
Answer: Control instructions specify how the different instructions will be executed in the script. They are primarily used to determine the control flow in Shell programs. The execution of a shell script proceeds in succession without these instructions. In shell programs, control instructions govern how execution flows.


7. What are the types of control instructions available in a shell?
Answer:

  • Sequence Control Instruction: This assures that a program's command runs in the sequence they are listed. As soon as the first command in the sequence has been completed, the second command follows, and so on.
  • Decision Control Instruction: It is also known as Selection Control Instruction. This instructs the computer which instruction it should execute next. In this, checking a condition is the basis for deciding which section to execute. If a given condition is true, a statement or set of statements will be executed; otherwise, they will be ignored.
  • Loop Control Instruction: It is also known as Repetition Instruction. This instruction allows a computer to continuously run a particular sequence of code. In a loop structure, the statements can be repeated until a condition is True or False, a particular number of times, or once for each element within the collection
  • Case-Control Instruction: This is used for selecting among several choices. Typically, they are used to execute only a particular block of statements within a series of statements.


8. What is a shell script?
Answer: A shell script is a series of UNIX commands to be executed, written in a plain text file. In shell scripting, a sequence of UNIX commands to be executed is provided instead of specifying just one command at a time. A shell script performs various functions such as program execution and file manipulation.


9. What is Crontab?
Answer: Crontab stands for Cron Table. It is a list of commands that a user wants to execute on a set schedule as well as the name of the command that manages that list. Crontab refers to the schedule and the name of the program used to edit the schedule. It automatically performs the tasks for the users as per the set schedule.


10. What are the different types of variables used in Shell Script?
Answer: A shell script has two types of variables:

  • System-defined variables are created/defined by the Operating System (Linux) itself. These variables are generally defined in Capital Letters and can be viewed by “set” command.
  • User-defined variables are created or defined by system users and the values of variables can be viewed by using the command “echo”.


11. What command needs to be used to take the backup?
Answer: The tar command is used to take the backup. It stands for tape archive. The command is mainly used to save and restore files to and from an archive medium like tape.


12. What are the different blocks of a file system?
Answer: The blocks in the file system are as follows:

  • Super Block: This block mainly tells about the state of the file system such as how big it is, the maximum number of files that can be accommodated, etc.
  • Boot Block: This block represents the beginning of a file system. It contains the bootstrap loader program, which gets executed while booting the host machine.
  • Inode Table: All the entities in a UNIX are treated as files. So, the information related to these files is stored in an Inode table.
  • Data Block: This block contains the actual file contents.


13. What do you mean by GUI Scripting?
Answer: The GUI (Graphical User Interface) is a client/server interface that uses graphical icons and visual indicators to allow users to interact with devices.


14. What is the alternative command for echo?
Answer: The tput command is an alternative command for echo. We can use this command to control how the output is displayed. Additionally, shell scripts can do things such as underline text and center text, regardless of the size of the screen.


15. How long does a variable in a shell script last?
Answer: Variables inside shell scripts have a lifespan of only as long as the execution lasts.


16. What is the purpose of the shelang line?
Answer: The shebang line is at the top of each script used to determine the engine's location and is used to execute the script.


17. How many kernels and shells are available in the UNIX environment?
Answer: There can be multiple shells available, but there is only one kernel in the UNIX environment.


18. What is a metacharacter?
Answer: Metacharacter is a unique character included in a program or data field of a shell. It offers information about other characters. For example: to list all files beginning with character 's', use the 'ls s*' command.


19. When the script is running in UNIX, can you pass arguments to it?
Answer: Yes, arguments can be passed, and it is a commonly followed practice. It is carried out to ensure the system does not have an error in executing commands and that scripts run smoothly.


20. What are the two files of the crontab command?
Answer:

  • cron. deny- decides the user that needs to be prevented from using crontab command
  • cron. allow- decides the user that needs to be permitted to use the crontab command


That's all about the common Shell Scripting questions for Developers, DevOps and IT Support Engineers. You are not going to fail any Shell Scripting interview again because what you have gathered above is what will propel you to success on your interview. How you will answer the questions is what will now determine your score. If you want to score highly then you have no choice but to make sure that you have mastered the questions with answers.


Other Tech Interview Question Articles You may like to explore


Thanks for reading this article so far. All the best for your Java Developer and DevOps interviews and if you have any questions which don't know answer or any doubt feel free to ask in comments. 

No comments:

Post a Comment

Feel free to comment, ask questions if you have any doubt.