HomeAboutContact

Cheat Sheet - Bash

Von Yannik Korzikowski
Veröffentlich in Cheat Sheets
24. November 2023
1 min Lesezeit
🇩🇪
Aktualisiert am 25. November 2023
Cheat Sheet - Bash

Inhalt

01
Yes / No selector
02
Logging
03
Args Command selector
04
Add Debug env var

In diesem Artikel sammle ich alle möglichen hilfreichen Tipps & Snippets für das Schreiben von einem Bash Skript.

Yes / No selector

while true; do
_log ""
read -rp "Ready to update credential - proceed? (yes/no) " yn
case $yn in
yes|y) break;;
no|n) _log "ERROR" "Aborted!";;
* ) _log "Invalid response!";;
esac
done

Logging

_log() {
if [ "$TERM" == "xterm-256color" ]; then
textRed=$(tput setaf 1)
textYellow=$(tput setaf 3)
textBlue=$(tput setaf 4)
textNormal=$(tput sgr0)
fi
if [ "${1}" == "WARN" ]; then
printf '%-7s %s\n' "${textYellow}[$1]${textNormal}" "$2" >&2
return 0
elif [ "${1}" == "ERROR" ]; then
printf '%-7s %s\n' "${textRed}[$1]${textNormal}" "$2" >&2
exit 1
elif [ "${1}" == "INFO" ]; then
printf '%-7s %s\n' "${textBlue}[$1]${textNormal}" "$2"
return 0
else
echo "$1"
fi
}
_log "INFO" "This is an info message"
_log "ERROR" "This is an error message"
_log "WARN" "This is a warn message"

Args Command selector

case "$1" in
init)
init
_log "INFO" "PolyCV initialized!"
;;
init-start)
init
_log "INFO" "PolyCV initialized!"
start
_log "INFO" "PolyCV started!"
;;
start)
start
_log "INFO" "PolyCV started!"
;;
stop)
stop
_log "INFO" "PolyCV stopped!"
;;
purge)
purge
;;
*)
echo "Usage: $0 {init|init-start|start|stop|purge\"server command\"}"
exit 1
;;
esac

Add Debug env var

# Check if DEBUG environment variable is set
if [ -n "$DEBUG" ]; then
# If DEBUG is set, enable verbose output and exit on error/unset variable
set -eux
else
# Otherwise, just exit on error
set -e
fi

Photo by J B: https://www.pexels.com/photo/herd-of-wildebeests-on-the-field-17980174/


Affiliate

Netcup bietet virtuelle Root-Server für einen fairen Preis an.
Mit dem Gutschein 36nc17009374344 erhälst du 5€ auf deine erste Bestellung.
Hier bestellen und einen Rabatt erhalten.
Falls der Gutschein nicht mehr funktioniert, bitte in die Kommentare schreiben.


Tags

#cheat_sheet#bash

Share


Vorheriger Artikel
Inhaltsverzeichnis Tools
Nächster Artikel
Cheat Sheet - Git
Yannik Korzikowski

Yannik Korzikowski

Cloud Architect

Auch interessant

Cheat Sheet - Git
Cheat Sheet - Git
December 02, 2023
1 min
🇩🇪

Quick Links

AboutContact me

Social Media