Bash Scripting Variables
79 Questions
0 Views

Bash Scripting Variables

Created by
@GuiltlessAshcanSchool

Questions and Answers

What is the main prerequisite for a text document created in one system to be readable in another system?

  • Same file format
  • Internet connection
  • Same operating system
  • Agreement on encoding format and character association (correct)
  • Time zones are strictly divided by longitudinal distance from the prime meridian.

    False

    What is the time at the prime meridian called?

    Coordinated Universal Time (UTC)

    Time zones are roughly proportional discrete bands of Earth's surface spanning the equivalent to one ___________.

    <p>hour</p> Signup and view all the answers

    Match the terms with their descriptions:

    <p>Time zone = Region of the world experiencing the same hour of the day Prime meridian = Reference point with a longitude angle of 0 UTC = Coordinated Universal Time</p> Signup and view all the answers

    Why do time zones not follow the exact longitudinal distance from the prime meridian?

    <p>Due to practical reasons</p> Signup and view all the answers

    All Linux-based systems have identical localisation settings.

    <p>False</p> Signup and view all the answers

    What is a common aspect among all Linux distributions?

    <p>Basic tools and concepts for setting up internationalisation aspects</p> Signup and view all the answers

    Which of the following countries has four time zones?

    <p>Brazil</p> Signup and view all the answers

    Curaçao is a country in South America.

    <p>False</p> Signup and view all the answers

    What is the next step after choosing a country?

    <p>Select one of the following time zone regions.</p> Signup and view all the answers

    The country information alone is not enough to set the time zone for ______________.

    <p>Brazil</p> Signup and view all the answers

    Match the following countries with their regions:

    <p>Brazil = South America Curaçao = Caribbean Canada = North America Greenland = North America</p> Signup and view all the answers

    How many countries are listed in the provided content?

    <p>53</p> Signup and view all the answers

    St Maarten is a country in South America.

    <p>False</p> Signup and view all the answers

    What is the purpose of tzselect?

    <p>To set the time zone.</p> Signup and view all the answers

    What is the purpose of the ~/.bash_aliases file?

    <p>To store personal aliases and have them sourced by ~/.bashrc</p> Signup and view all the answers

    Functions are less flexible than aliases in Bash.

    <p>False</p> Signup and view all the answers

    What is the purpose of the alias 'git_info'?

    <p>To display the location of the git command and its version</p> Signup and view all the answers

    The ~/.bash_aliases file is sourced by ___________________ with every system start.

    <p>.bashrc</p> Signup and view all the answers

    What is a characteristic of functions in Bash?

    <p>They are more flexible than aliases</p> Signup and view all the answers

    Match the following aliases with their descriptions:

    <p>git_info = Display the location of the git command and its version greet = Print a greeting message ll = List files and directories in a long format where? = Display the current working directory</p> Signup and view all the answers

    There is only one valid syntax to define functions in Bash.

    <p>False</p> Signup and view all the answers

    What is the purpose of the 'function' keyword in Bash?

    <p>To define a function</p> Signup and view all the answers

    What is the purpose of the export command in shell scripting?

    <p>To turn a local variable into an environment variable</p> Signup and view all the answers

    The HISTFILE variable is used to store the history of commands.

    <p>True</p> Signup and view all the answers

    What is the purpose of the readonly command?

    <p>To make a variable immutable.</p> Signup and view all the answers

    The ~ symbol represents the _____________ directory.

    <p>HOME</p> Signup and view all the answers

    What is the purpose of the env command?

    <p>To list all environment variables</p> Signup and view all the answers

    The PATH variable is used to store the current working directory.

    <p>False</p> Signup and view all the answers

    Match the following shell commands with their functions:

    <p>echo = Reference a variable ls = List directory contents readonly = Make variables immutable set = List all variables and functions in current session</p> Signup and view all the answers

    What is the purpose of the unset command?

    <p>To unset a variable.</p> Signup and view all the answers

    Which environment variable stores information about ssh connections?

    <p>SSH_CONNECTION</p> Signup and view all the answers

    Setting the value of my_path to PATH will overwrite the existing PATH variable.

    <p>False</p> Signup and view all the answers

    What is the value of the mammal variable?

    <p>gnu</p> Signup and view all the answers

    To create a local variable named mammal, you would use the command: mammal = ______________.

    <p>gnu</p> Signup and view all the answers

    What command would you use to search for the mammal environment variable?

    <p>set | grep mammal</p> Signup and view all the answers

    Creating a new folder named bin in the home directory will automatically add it to the PATH.

    <p>False</p> Signup and view all the answers

    To add the ~/bin folder to your PATH, you would use the command: export PATH=$PATH:_____________.

    <p>~/bin</p> Signup and view all the answers

    Match the environment variables with their corresponding descriptions:

    <p>PATH = Stores the directories to search for executables SSH_CONNECTION = Stores information about ssh connections HOME = Stores the user's home directory BASH_VARS = Stores bash variables</p> Signup and view all the answers

    Which file is sourced by default at login or when spawning a new shell?

    <p>~/.profile</p> Signup and view all the answers

    What is the purpose of the env command in shell scripting?

    <p>To display all environment variables</p> Signup and view all the answers

    Where would you typically define functions for frequently used sequences of commands?

    <p>~/.bashrc</p> Signup and view all the answers

    What is the purpose of the export command in shell scripting?

    <p>To make a variable available to all child processes</p> Signup and view all the answers

    What is the purpose of the unset command in shell scripting?

    <p>To remove a variable from the environment</p> Signup and view all the answers

    Which of the following files is used to set the command search path?

    <p>/etc/profile</p> Signup and view all the answers

    What is the purpose of the ~/.bash_logout file?

    <p>To execute commands when a user logs out</p> Signup and view all the answers

    What is the purpose of the source command in shell scripting?

    <p>To read and execute commands from a file</p> Signup and view all the answers

    What is the purpose of the /etc/bash.bashrc file?

    <p>To configure the system-wide bashrc file for interactive bash shells</p> Signup and view all the answers

    Which file is sourced by default for interactive bash shells?

    <p>/etc/bash.bashrc</p> Signup and view all the answers

    What is the purpose of the ~/.bashrc file?

    <p>To set user-specific variables and source ~/.bash_aliases</p> Signup and view all the answers

    What happens when bash is run interactively?

    <p>It checks the window size after each command and sets some variables</p> Signup and view all the answers

    What is the purpose of the ~/.bash_aliases file?

    <p>To store user-specific aliases and functions</p> Signup and view all the answers

    What is the purpose of sourcing the ~/.bash_aliases file?

    <p>To load user-specific aliases and functions</p> Signup and view all the answers

    What happens when the tilde (~) is used in a file path?

    <p>It expands to the absolute path of the user's home directory</p> Signup and view all the answers

    In what order are the global and local configuration files executed?

    <p>Global configuration files are executed first, followed by local configuration files</p> Signup and view all the answers

    What is the purpose of putting functions in shell initialization scripts such as /etc/bash.bashrc or ~/.bashrc?

    <p>To make them persistent across system reboots</p> Signup and view all the answers

    What is the syntax to define a function in Bash when writing it in a single line?

    <p>function_name() { command #1; command #2; ... }</p> Signup and view all the answers

    What is the indication of a new line after a line break in the shell prompt?

    <p>&gt;</p> Signup and view all the answers

    What is the command to invoke a function?

    <p>function_name</p> Signup and view all the answers

    What is the purpose of sourcing shell initialization scripts after adding aliases or functions?

    <p>To make the changes take effect immediately</p> Signup and view all the answers

    What is the purpose of the /etc/bash.bashrc file?

    <p>To store global aliases and functions</p> Signup and view all the answers

    What is the syntax to define a function with multiple commands in Bash?

    <p>function_name() { command #1; command #2; ... }</p> Signup and view all the answers

    What is the purpose of the ~/.bashrc file?

    <p>To store local aliases and functions</p> Signup and view all the answers

    What is the primary purpose of aliases and functions in the shell environment?

    <p>To encapsulate a series of repetitive or recurrent commands</p> Signup and view all the answers

    What is the syntax for declaring an alias in the shell?

    <p>keyword alias followed by the alias assignment</p> Signup and view all the answers

    What is the main advantage of using aliases and functions in the shell environment?

    <p>They make the shell more efficient by encapsulating repetitive commands</p> Signup and view all the answers

    What is the concept that enables aliases and functions to group together a series of commands?

    <p>Encapsulation</p> Signup and view all the answers

    What is the purpose of the shell environment?

    <p>To group together variables, aliases, and functions</p> Signup and view all the answers

    What is the difference between an alias and a function?

    <p>A function is less flexible than an alias</p> Signup and view all the answers

    What is the purpose of the command 'latest_music=$(ls -l1t ~/Music| head -n 6)'?

    <p>To list the latest music files in the ~/Music directory</p> Signup and view all the answers

    What is the purpose of the 'head -n 6' command in the 'latest_music=$(ls -l1t ~/Music| head -n 6)' command?

    <p>To display the first 6 lines of the output</p> Signup and view all the answers

    What is the purpose of the LANG variable?

    <p>To set the language of the current shell</p> Signup and view all the answers

    What is the purpose of the SSH_CONNECTION variable?

    <p>To store information about ssh connections</p> Signup and view all the answers

    How do you set the PATH variable to include /home/carol/scripts as the last directory to search for executables?

    <p>PATH=$PATH:/home/carol/scripts</p> Signup and view all the answers

    What is the purpose of the command mammal=gnu?

    <p>To create a local variable</p> Signup and view all the answers

    How do you reference the value of the mammal variable?

    <p>echo $mammal</p> Signup and view all the answers

    What is the purpose of the command var_sub='The value of mammal is '$mammal?

    <p>To create a local variable using variable substitution</p> Signup and view all the answers

    What is the purpose of the command win_path=C:\path\to\dir?

    <p>To set the Windows path</p> Signup and view all the answers

    Study Notes

    Environment Variables

    • The PATH environment variable stores information about SSH connections.
    • To set PATH to include a new directory, use the command export PATH=$PATH:/home/carol/scripts.
    • Local variables are only accessible in the current shell session, while environment variables are accessible in the current and future shell sessions.

    Creating and Using Variables

    • To create a local variable, use the syntax variable_name=value.
    • To create an environment variable, use the syntax export variable_name=value.
    • To turn a local variable into an environment variable, use the export command.
    • To list all environment variables, use the env command or set command with grep.
    • To make variables persistent across reboots, add the code to the ~/.profile file.

    Shell Environment

    • Variables are used by the shell itself and other programs.
    • There are differences between local and global (or environment) variables.
    • Variables can be made readonly using the readonly command.
    • Startup scripts can be used to make variables persistent.

    Common Environment Variables

    • DISPLAY: used for graphical displays
    • HISTCONTROL, HISTSIZE, HISTFILESIZE, HISTFILE: used for shell history
    • HOME, HOSTNAME, HOSTTYPE: used for user and system information
    • LANG, LD_LIBRARY_PATH, MAIL, MAILCHECK: used for internationalization and email
    • PATH, PS1 (and other prompt variables), SHELL, USER: used for shell configuration

    Tilde (~) and Paths

    • The tilde (~) represents the home directory of the current user.
    • To add a directory to the PATH environment variable, use the syntax export PATH=$PATH:/home/user/bin.
    • To make the PATH variable persistent across reboots, add the code to the ~/.profile file.

    Functions and Aliases

    • Functions are more flexible and programmatic than aliases.
    • Two syntaxes for creating functions: using the function keyword and using parentheses.
    • Functions can include logic through blocks or collections of other commands.
    • Aliases are used to create shortcuts for commands.

    Time Zones and Localization

    • Time zones are regions of the world experiencing the same hour of the day.
    • Time zones are relative to the prime meridian, where the Earth's longitude angle is defined to be 0.
    • The time at the prime meridian is called Coordinated Universal Time (UTC).
    • Time zones do not follow the exact longitudinal distance from the reference point.

    Customize and Use the Shell Environment

    • The objective is to set environment variables, write Bash functions, maintain skeleton directories, and set the command search path.
    • Environment variables can be set at login or when spawning a new shell using files such as /etc/bash.bashrc, /etc/profile, ~/.bash_profile, ~/.bash_login, and ~/.profile.
    • The source command is used to execute the content of a file in the current shell.
    • The env command displays all environment variables and their values.
    • The export command is used to set environment variables for the current shell and all child shells.
    • The unset command is used to remove environment variables.
    • Bash functions can be used to create frequently used sequences of commands.
    • Bash functions can be written in the ~/.bashrc file to make them persistent across system reboots.
    • The function keyword is used to declare a Bash function.
    • Bash functions can be written in one line using semicolons to separate commands.
    • The alias command is used to create a substitute name for another command.
    • Aliases can be used to run a series of repetitive or recurrent commands.
    • Aliases can be declared using the alias keyword followed by the alias assignment.
    • The PS2 prompt is used to indicate a new line after a line break when writing a function in the shell prompt.

    Interactive Non-Login Shell

    • The global file /etc/bash.bashrc is executed for interactive bash shells.
    • The file checks if the shell is being run interactively and sets some variables.
    • The local file ~/.bashrc is executed for interactive bash shells at a user level.
    • The file checks the window size, sets history variables, and sources ~/.bash_aliases if it exists.

    Variable Assignment

    • Variables can be assigned using the = operator.
    • Variables can be referenced using the $ operator.
    • The tilde (~) expands to the absolute path of the file.
    • Variables can be assigned with spaces or special characters using quotes.

    Command Search Path

    • The command search path can be set using the PATH variable.
    • The PATH variable can be set to include a new directory using the PATH=$PATH:/new/directory syntax.

    Language and Localization

    • The LANG variable can be set to change the language of the shell.
    • The LANG variable can be set to es_ES.UTF-8 to set the language to Spanish UTF-8.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Description

    Quiz on bash scripting variables, including environment variables, PATH, and variable substitution.

    More Quizzes Like This

    Bash for Beginners Series at Microsoft
    5 questions
    Linux Bash Scripting Quiz
    61 questions

    Linux Bash Scripting Quiz

    ColorfulCatharsis avatar
    ColorfulCatharsis
    Linux Bash Scripting Overview
    42 questions

    Linux Bash Scripting Overview

    FashionablePromethium avatar
    FashionablePromethium
    Use Quizgecko on...
    Browser
    Browser