diff --git a/linux-bash/bash_aliases.sh b/linux-bash/bash_aliases.sh index bf3fc19..b38e675 100644 --- a/linux-bash/bash_aliases.sh +++ b/linux-bash/bash_aliases.sh @@ -123,6 +123,45 @@ add() { fi diff } +parallel() { + if [ $# -lt 2 ]; then + echo "Usage: parallel " + return 1 + fi + + count=$1 + shift + command="$@" + + for i in $(seq 1 $count); do + eval "$command" & + done + + wait +} + +repeat() { + if [ $# -lt 2 ]; then + echo "Usage: repeat [s|m|h] " + return 1 + fi + + interval=$(echo $1 | sed 's/[smh]$//') + unit=${1##*[0-9]} + command="${@:2}" + + case $unit in + s|'') seconds=$interval;; + m) seconds=$((interval * 60));; + h) seconds=$((interval * 3600));; + *) echo "Invalid time unit. Use 's' for seconds, 'm' for minutes, 'h' for hours, or no unit for seconds."; return 1;; + esac + + while true; do + eval $command + sleep $seconds + done +} alias remote="git remote -v" alias stash="git stash" alias branch="git branch"