In accumulation to the collaborating mode, where the operator inputs one instruction at an instance, with instant implementation and response, Bash (and many other shells) also could execute a complete script of instructions, acknowledged as a "Bash shell script" (or "Bash script" or "shell script" or only "script"). A script can hold some simple list of instructions or commands — or only a single command — or it can cover functions, loops, conditional constructs, and all the other hallmarks of authoritative programming. In result, a Bash shell script is a computer executable program written using the Bash programming language.
Shell scripting can be defined as the art of creating and maintaining such scripts which can do complex task easily and be reusable whenever we want to.
Shell scripts can be executed from the interactive command-line (in Linux the command-line is called as shell or terminal) explained above; or we can call them from other sections of the system. A script can be scheduled to run when the system starts; some different script can be scheduled to run every weekday at 2:30 AM; and some different script can be executed whenever a user/operator logs into the device.
Shell scripts are usually utilized to full fill numerous system administration tasks, such as making disk backups at some certain intervals, assessing system logs, and many more. They are also frequently used as installation scripts for complicated programs or software’s. They are mainly suited to all of these because they allow complexity without requiring it: if a script just needs to run two external programs, then it can be of just a two-line script, and if it needs all the power and decision-making ability of a Turing-complete imperative programming language, then it can have that as well