#!/bin/bash usage() { echo "Usage: $0 [-s <45|90>] [-p <string>]" 1>&2; exit 1; } while getopts ":s:p:" o; do case "${o}" in s) s=${OPTARG} ((s == 45 || s == 90)) || usage ;; p) p=${OPTARG} ;; *) usage ;; esac done shift $((OPTIND-1)) if [ -z "${s}" ] || [ -z "${p}" ]; then usage fi echo "s = ${s}" echo "p = ${p}"
Example runs:
$ ./myscript.sh Usage: ./myscript.sh [-s <45|90>] [-p <string>] $ ./myscript.sh -h Usage: ./myscript.sh [-s <45|90>] [-p <string>] $ ./myscript.sh -s "" -p "" Usage: ./myscript.sh [-s <45|90>] [-p <string>] $ ./myscript.sh -s 10 -p foo Usage: ./myscript.sh [-s <45|90>] [-p <string>] $ ./myscript.sh -s 45 -p foo s = 45 p = foo $ ./myscript.sh -s 90 -p bar s = 90 p = bar
Related Posts:
- How do I split a string on a delimiter in Bash?
- Ubuntu says “bash: ./program Permission denied” [closed]
- How to concatenate string variables in Bash
- -bash: syntax error near unexpected token `)’
- How do I iterate over a range of numbers defined by variables in Bash?
- How do I iterate over a range of numbers defined by variables in Bash?
- “unary operator expected” error in Bash if condition
- What does “-ne” mean in bash?
- How to generate random number in Bash?
- How to check if a variable is set in Bash?
- How can I compare numbers in Bash?
- Open and write data to text file using Bash?
- How do I set a variable to the output of a command in Bash?
- Is there a TRY CATCH command in Bash
- Run a string as a command within a Bash script
- Meaning of “! -S” in shell script
- “No such file or directory” but it exists
- How do I pause my shell script for a second before continuing?
- In the shell, what does ” 2>&1 ” mean?
- Extract substring in Bash
- Should I put #! (shebang) in Python scripts, and what form should it take?
- Should I put #! (shebang) in Python scripts, and what form should it take?
- In the shell, what does ” 2>&1 ” mean?
- How do I use a regex in a shell script?
- How do I copy a folder from remote to local using scp?
- How to grep for case insensitive string in a file?
- Difference between wait and sleep
- How do I parse command line arguments in Bash?
- Multi-line string with extra space (preserved indentation)
- How to delete from a text file, all lines that contain a specific string?
- Multi-line string with extra space (preserved indentation)
- ‘\r’: command not found – .bashrc / .bash_profile [duplicate]
- How to mkdir only if a directory does not already exist?
- Loop through an array of strings in Bash?
- ‘\r’: command not found – .bashrc / .bash_profile [duplicate]
- How can I check if a directory exists in a Bash shell script?
- How to set ssh timeout?
- commands not found on zsh
- sudo: apt-get: command not found
- Why do people write #!/usr/bin/env python on the first line of a Python script?
- How to mkdir only if a directory does not already exist?
- “sed” command in bash
- How can I declare and use Boolean variables in a shell script?
- How to reload .bashrc settings without logging out and back in again?
- Is there a Python equivalent to the ‘which’ command
- How can I declare and use Boolean variables in a shell script?
- How to reload .bash_profile from the command line?
- Replace one substring for another string in shell script
- “[ ]” vs. “[[ ]]” in Bash shell
- Pseudo-terminal will not be allocated because stdin is not a terminal
- Who can access a file with octal permissions “000” on Linux/UNIX?
- What is a list in Bash?
- What does the line “#!/bin/sh” mean in a UNIX shell script?
- How can I count all the lines of code in a directory recursively?
- How can I kill a process by name instead of PID, on Linux?
- Given two directory trees, how can I find out which files differ by content?
- Which characters need to be escaped when using Bash?
- Shell: How to call one shell script from another shell script?
- find: missing argument to -exec
- python getoutput() equivalent in subprocess
- ./configure : /bin/sh^M : bad interpreter
- What is the $? (dollar question mark) variable in shell scripting?
- How to check if an environment variable exists and get its value?
- What is the difference between “#!/usr/bin/env bash” and “#!/usr/bin/bash”?
- Is there a “goto” statement in bash?
- dquote> result of a execution a program in linux shell
- Using sudo with Python script
- how to fix the issue “Command /bin/sh failed with exit code 1” in iphone
- Create a new file in git bash
- conditional binary operator expected in shell script
- How to specify the private SSH-key to use when executing shell command on Git?
- Block Comments in a Shell Script
- Writing a simple shell in C using fork/execvp
- Speed up rsync with Simultaneous/Concurrent File Transfers?
- Multi-dimensional arrays in Bash
- Variable interpolation in the shell
- chmod: changing permissions of ‘my_script.sh’: Operation not permitted
- What’s the meaning of the parameter -e for bash shell command line?
- zip error – Nothing to do
- What does set -e mean in a bash script?
- What does set -e mean in a bash script?
- Check existence of input argument in a Bash shell script
- Associative arrays in Shell scripts
- How to split one string into multiple strings separated by at least one space in bash shell?
- Shell script not running, command not found
- source command not found in sh shell
- How to get a shell environment variable in a makefile?
- Difference between sh and Bash
- What are the uses of the exec command in shell scripts?
- using rot13 and tr command for having an encrypted email address
- How to parse XML in Bash?
- sed whole word search and replace
- Integer expression expected error in shell script
- How do I know the script file name in a Bash script?
- What is the difference between double and single square brackets in bash?
- What is “-bash: !”: event not found”
- Colors in bash after piping through less?
- What’s the difference betwen the single dash and double dash flags on shell commands?
- How to run command as user who has /usr/sbin/nologin as Shell?
- How to let ‘cp’ command don’t fire an error when source file does not exist?