dev-env/bin/drun
2024-12-21 03:19:46 +01:00

37 lines
803 B
Bash

#!/bin/bash
drun() {
if [ $# -lt 2 ]; then
echo "Verwendung: drun <system> <run in docker container>"
return 1
fi
local CONTAINER_NAME="$1"
shift # Das erste Argument entfernen
local COMMAND="$@"
local CONTAINER_ID=$(docker ps -qf "name=$CONTAINER_NAME-app")
if [ -z "$CONTAINER_ID" ]; then
echo "Container '$CONTAINER_NAME' wurde nicht gefunden."
return 1
fi
if [[ -t 0 && -t 1 ]]; then
docker exec -it "$CONTAINER_ID" $COMMAND
else
docker exec "$CONTAINER_ID" $COMMAND
fi
}
_drun_completion() {
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
opts="start stop restart status"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
}
complete -F _drun_completion drun