#!/bin/sh KERNEL=$(uname -s) # Aliases alias e=\$VISUAL ## Replace vi and vim with neovim if installed if [ -x "$(command -v nvim)" ]; then alias vi='nvim' alias vim='nvim' fi ## Replace ls and tree with eza if installed if [ -x "$(command -v eza)" ]; then alias ls='eza --group-directories-first' alias tree='eza --tree' else ls --color=auto > /dev/null 2>&1 && alias ls='ls --color=auto' fi ## Colors if [ -x "$(command -v dircolors)" ]; then if [ -f ~/.dircolors ]; then eval "$(dircolors ~/.dircolors)" else eval "$(dircolors)" fi fi alias dir='dir --color=auto' alias vdir='vdir --color=auto' alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto' alias hexedit='hexedit --color' alias minicom='minicom -c on' ## Some more ls aliases alias ll='ls -l' alias la='ls -Al' # Easy to use copy/paste aliases for different platforms if [ "$KERNEL" = "Linux" ]; then alias ucopy='xclip -selection c' alias upaste='xclip -selection clipboard -o' elif [ "$KERNEL" = "Darwin" ]; then alias ucopy='pbcopy' alias upaste='pbpaste' fi # ex - archive extractor # # usage: ex ex () { if [ -f $1 ]; then case $1 in *.tar.bz2) tar xjf $1 ;; *.tar.gz) tar xzf $1 ;; *.bz2) bunzip2 $1 ;; *.rar) unrar x $1 ;; *.gz) gunzip $1 ;; *.tar) tar xf $1 ;; *.tbz2) tar xjf $1 ;; *.tgz) tar xzf $1 ;; *.zip) unzip $1 ;; *.Z) uncompress $1;; *.7z) 7z x $1 ;; *) echo "'$1' cannot be extracted via ex()" ;; esac else echo "'$1' is not a valid file" fi } welcome_msg () { if [ "$KERNEL" = "Linux" ]; then DF_ARGS="-h -T -xtmpfs -xdevtmpfs" if [ -x "$(command -v lsb_release)" ]; then OS_DESCRIPTION="$(lsb_release -sd)" # Manjaro has a weird lsb_release, compensate [ "$OS_DESCRIPTION" = '"Manjaro Linux"' ] && OS_DESCRIPTION="Manjaro Linux $(lsb_release -sr) ($(lsb_release -sc))" else OS_DESCRIPTION="$(uname --operating-system)" fi elif [ "$KERNEL" = "Darwin" ]; then DF_ARGS="-h -l" OS_DESCRIPTION="$(system_profiler SPSoftwareDataType -detailLevel mini | grep -o "System Version: .*" | awk -F ': ' '{print $2}')" fi printf '\n' printf ' \e[1mUser: \e[0;32m%s\e[0m\n' "$USER" printf ' \e[1mHostname: \e[0;32m%s\e[0m\n' "$(uname -n)" printf ' \e[1mOS: \e[0;32m%s\e[0m\n' "$OS_DESCRIPTION" printf ' \e[1mKernel: \e[0;32m%s %s\e[0m\n' "$KERNEL" "$(uname -r)" printf '\n' printf ' \e[1mDisk usage:\e[0m\n' printf '\n' printf '%s\n' "$(eval df $DF_ARGS | sed 's/^/ /')" printf '\n' }