bash
Table of Contents
Bash
Useful Bash code, with no particular order
Add safeguards on every script
At the top of the file, always start your scripts with:
set -euo pipefail
-e
: The -e option will cause a bash script to exit immediately when a command fails.-o pipefail
: This particular option sets the exit code of a pipeline to that of the rightmost command to exit with a non-zero status, or to zero if all commands of the pipeline exit successfully.-u
: This option causes the bash shell to treat unset variables as an error and exit immediately.
More info: https://vaneyckt.io/posts/safer_bash_scripts_with_set_euxo_pipefail/
Read passwords with feedback on a script
unset password charcount=0 prompt="Enter your password: " while IFS= read -p "$prompt" -r -s -n 1 char do if [[ $char == $'\0' ]] then break fi if [[ $char == $'\177' ]] ; then # Backspace support if [ $charcount -gt 0 ] ; then charcount=$((charcount-1)) prompt=$'\b \b' password="${password%?}" else prompt='' fi else charcount=$((charcount+1)) prompt='*' password+="$char" fi done
bash.txt · Last modified: 2023/01/17 11:27 by roger