sync/home_external/.bash_aliases

99 lines
2.8 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
2022-04-28 23:36:42 +02:00
if [ "$TERM" == 'xterm-kitty' ]; then
alias ssh='kitty +kitten ssh'
2023-05-19 15:13:26 +02:00
alias diff='kitty +kitten diff'
2022-04-28 23:36:42 +02:00
fi
DEFAULT_RSYNC='--info=ALL --recursive --delay-updates --human-readable --links --hard-links --perms'
2022-04-28 23:36:42 +02:00
alias l='ls -l -v --all --human-readable --classify --group-directories-first' # -lvahF --group-directories-first
alias lt=='l --time-style=long-iso'
2022-04-28 23:36:42 +02:00
alias r='reset'
alias ..='cd ..'
alias refresh_bashrc='. ~/.bashrc' # alternatively: 'source ~/.bashrc'
alias rsync_default="rsync $DEFAULT_RSYNC --checksum"
# source /usr/share/bash-completion/completions/rsync
# complete -F _rsync rsync_default
2022-04-28 23:36:42 +02:00
alias rsync_backup="rsync $DEFAULT_RSYNC --checksum --times --group --owner --delete"
2023-05-27 18:11:04 +02:00
alias rsync_move="rsync $DEFAULT_RSYNC --checksum --remove-source-files"
2022-04-28 23:36:42 +02:00
alias rsync_update="rsync $DEFAULT_RSYNC --update --times"
alias rsync_copy="rsync $DEFAULT_RSYNC --ignore-times"
2022-04-28 23:36:42 +02:00
alias off='systemctl poweroff'
alias nnn='nnn -dHrR'
alias nn='n -dHrR'
alias c='clear'
alias sort_dirs_by_size='du --block-size=1K --human-readable --max-depth=1 | sort --human-numeric-sort --reverse' # 'du -kh --max-depth=1 | sort -hr'
alias sd='sudo ' # alias, so sudo can use aliases: "If the last character of the alias value is a blank, then the next command word following the alias is also checked for alias expansion."
alias mountdrive='udisksctl mount -b'
alias unmountdrive='udisksctl unmount -b'
alias fssizes='df -kh --output=size,used,avail,pcent,target | sort -hr'
alias dirsizes='du -kh --apparent-size --max-depth=1 | sort -hr'
updateFlatpak() {
noconfirm=
if [[ $1 == "-y" ]]; then
noconfirm="--assumeyes";
fi
executeAndNotify "doUpdateFlatpak $noconfirm" "flatpaks updated" "flatpak update failed";
}
doUpdateFlatpak() {
flatpak update $1;
flatpak remove --unused $1
}
# 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.)
finds () {
find $* 2>/dev/null
2023-05-14 12:50:14 +02:00
}
# 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
}