If you want to build a console-based bash script that has command-line options build-in, you can make use of the getopts Unix command.
Example:
#!/bin/bash
while getopts ":a:b:" opt; do
case $opt in
a)
num1="$OPTARG"
;;
b)
num2="$OPTARG"
;;
\?)
echo "Invalid option: -$OPTARG" >&2
exit 1
;;
:)
echo "Option -$OPTARG requires an argument." >&2
exit 1
;;
esac
done
if [ -z "$num1" ] || [ -z "$num2" ]; then
echo "Usage: $0 -a num1 -b num2" >&2
exit 1
fi
sum=$(expr $num1 + $num2)
echo "The sum of $num1 and $num2 is $sum."
Output:
Facing issues? Have Questions? Post them here! I am happy to answer!
Author Info:
Rakesh (He/Him) has over 14+ years of experience in Web and Application development. He is the author of insightful How-To articles for Code2care.
Follow him on: X
You can also reach out to him via e-mail: rakesh@code2care.org
More Posts related to Bash,
- How to use Autocomplete and Autosuggestion in Shell Commands
- Bash How to Save Output of a Command to a Variable
- How to know the current shell you are logged in?
- How to Echo Bash Command to a File
- Bash Command to Get Absolute Path for a File
- How to Split a String based on Delimiter in Bash Scripting
- Bash: Command Line Arguments to Bash Script Examples
- Bash Command to Download a File From URL
- How to check if a Command Exists using Bash Script
- Ways to Increment a counter variable in Bash Script
- Know Bash shell version command
- Bash command to Read, Output and Manipulate JSON File
- Bash Command to Base64 Decode a String
- Bash Command to Check Python Version
- Bash: Command to Find the Length of a String
- What is $$ in Bash Shell Script- Special Variable
- Bash - How to check if a Command Failed?
- List all Username and User ID using Bash Command
- Command to Sort File In Reverse Order [Unix/Linux/macOS]
- bash: netstat: command not found
- Bash Command To Go Back To Previous Directory
- [Fix] bash: script.sh: /bin/bash^M: bad interpreter: No such file or directory
- How to check your IP using bash for Windows?
- Bash Command To Check If File Exists
- Convert String from uppercase to lowercase in Bash
More Posts:
- How to Copy files from Docker Container to Host System - Docker
- Java Get Current Date for a Specific Time Zone - Java
- [fix] Docker: Alpine Linux - /bin/sh: bash: not found - Docker
- How to install Postman natively on a Mac - HowTos
- How to create a circular Image using pure CSS Code - CSS
- How to make macOS Terminal window Transparent (or Opaque) - MacOS
- [Fix] MySQL No database selected - ERROR 1046 (3D000) - MySQL
- How to Install Windows Subsystem for Linux (WSL) on Windows 11 (22H2) - Windows-11