1/26
Vocabulary and key concepts from Dr. Subharag Sarkar's lecture on the Bourne Again Shell (BASH), including shell responsibilities, startup processes, variables, and scripting syntax.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Shell
A command interpreter and an interface between a human (or another program) and the Operating System (OS).
Terminal
A program that opens a graphical window and lets you interact with the shell.
Bourne-Again Shell (BASH)
An extension of the Bourne Shell (sh) that incorporates features from the Korn shell (ksh) and C shell (csh).
Built-in commands
Specific commands like cd, pwd, and echo that are contained within the shell rather than retrieved from disk utilities.
Wildcards
Characters such as ∗, ?, and [...] used to generate lists of files to be passed to a chosen command or utility.
Pipeline Hookup
The shell's responsibility for detecting the pipe symbol (∣) and connecting the standard output of the preceding command with the standard input of the succeeding command.
Login shell
A shell started at startup by the init (or systemd) process, or a shell that logs you into the system via username and password.
Non-login shell
A shell that is invoked without logging anyone in.
init
A process invoked by the kernel at the end of the startup procedure, responsible for starting up and shutting down the system.
getty
A process created by the init process responsible for getting and managing the terminal type (tty).
login
A process that authenticates the user after communication is established, replaced by the appropriate shell once authenticated.
systemd
The modern replacement for the init process in many Linux distributions.
Globbing
The process by which the shell interprets certain characters as wildcards for filenames.
Shebang (#!)
A sequence at the beginning of a shell script used to identify which shell should be used to execute the program.
ps command
Short for Process Status, this command line utility is used to display or view information related to processes running in a Linux system.
Subshell
A child process launched by a shell (or shell script) that has its own environment and cannot change variables in the parent shell.
env command
A command used to display the current environment or modify specified variables in a new environment.
PATH Variable
An environment variable containing a list of directories separated by colons (:) where the shell searches for executable commands.
Positional parameters
Special shell variables, such as 1, 2, and 3, that represent command-line arguments used to modify script behavior.
read command
A command that allows the shell to prompt for and store user input into a variable.
Backtick (‘)
A quoting mechanism used to perform command substitution.
Double Quotes (")
A quoting mechanism that allows some variable expansion but prevents wildcard expansion.
Single Quote (′)
A quoting mechanism that performs literal interpretation, preventing wildcard replacement, variable expansion, and command substitution.
let statement
A statement used to perform arithmetic operations such as +, −, ∗, /, and %.
test command
A command used to evaluate condition expressions, for which single brackets […] serve as a built-in alias.
Double brackets ([[…]])
A bash keyword for evaluating condition expressions that is more capable than single brackets and supports C-like syntax with relational operators.
case statement
A control structure used for decisions based on multiple choices, ending with the keyword esac.