From d212b0e5270163d5939971b0503641f0ff4de157 Mon Sep 17 00:00:00 2001 From: fabian Date: Thu, 12 May 2022 13:26:00 +0200 Subject: [PATCH] - added short form for command as comment - added useful functions for notification after a command has failed and/ or succeeded --- home_external/.bash_aliases | 55 ++++++++++++++++++++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) diff --git a/home_external/.bash_aliases b/home_external/.bash_aliases index f7fc77d..4678885 100644 --- a/home_external/.bash_aliases +++ b/home_external/.bash_aliases @@ -4,7 +4,7 @@ fi DEFAULT_RSYNC='--verbose --recursive --progress --delay-updates --human-readable --links --hard-links --perms' -alias l='ls -l -v --all --human-readable --classify --group-directories-first' +alias l='ls -l -v --all --human-readable --classify --group-directories-first' # -lvahF --group-directories-first alias r='reset' alias ..='cd ..' alias refresh_bashrc='. ~/.bashrc' # alternatively: 'source ~/.bashrc' @@ -17,3 +17,56 @@ alias nnn='nnn -dHrR' alias nn='n -dHrR' alias finds='find $* 2>/dev/null' alias c='clear' + + +# executes command and notifies upon failure +execute() { + dir="$(pwd)"; + dir=${dir##*/}; + if [ -n "$2" ]; then + errLog=$2 + else + errLog="execution of \"$1\" failed" + fi + + if ! $1; then + notifyError "$dir: $errLog"; + return 1; + fi +} + + +# executes command and notifies upon success or failure +executeAndNotify () { + dir="$(pwd)"; + dir=${dir##*/}; + if [ -n "$2" ]; then + winLog=$2 + else + winLog="execution of \"$1\" succeeded" + fi + + if ! execute "$1" "$3"; then # arguments in quotes so they are interpreted as ONE argument each by execute() + return 1; + fi + notifyInfo "$dir: $winLog" +} + + +# find file but don't print errors (e.g. can't access directory etc.) +: 'seems to be working as alias as well: +finds () { + find $* 2>/dev/null +}' + + +# sends a desktop-notification with an icon signalling an error +notifyError () { + notify-send "$1" --icon=data-warning +} + + +# sends a desktop-notification with an icon signalling a simple information +notifyInfo () { + notify-send "$1" --icon=preferences-desktop-notification +}